Crosscutting Concepts
Recurring patterns and principles across the system
This section describes concepts that apply across multiple building blocks.
Multi-tenancy
- All Data is tenant-scoped. This includes the databse level: Each tenant has its own database.
GraphQL schema language
- A GraphQL schema is used to define projection and CRUD types; Deployments applies schemas to Projections and CRUD.
Event sourcing and consistency
- Streams is used as the event store; Projections are built on events.
Configuration and secrets
- Services are configured via environment variables
Observability
- Health endpoints (
/health) are available for each service. - Metrics (
/metrics) are available for each service. - Logging: configurable log level and structure.