Skip to main content

System Scope and Context

This section provides a high-level overview of Framework M's boundaries and its interactions with external systems.

3.1 Business Context

Framework M is an application construction framework that sits between the business logic (DocTypes) and the infrastructure (Adapters).

3.2 External Interfaces (The Ports)

Framework M interacts with the outside world through standardized Ports (Protocols), divided into Primary and Secondary categories.

3.2.1 Primary Interfaces (How to reach us)

InterfacePurposeImplementation (Example)
HTTP APIFrontend Desk, external integrationsLitestar
CLI ToolsDeveloper scaffolding, production migrationsCyclopts
Event BusAsynchronous service-to-service messagingNATS JetStream

3.2.2 Secondary Interfaces (External systems we use)

InterfacePurposeImplementation (Example)
SQL DatabaseRelational data storagePostgreSQL / SQLite
NATS / RedisMessage brokering and event storageNATS JetStream
Identity ProviderAuthentication and authorizationCitadel / Keycloak
Bucket StorageFile and asset storageLocal FS / S3
Caching EngineHigh-performance state cachingRedis

3.3 Context Diagram

      ┌────────────────┐                ┌───────────────┐
│ External API │◄───────────────┤ Framework M │
└────────────────┘ (HTTP) └───────┬───────┘

┌────────▼────────┐
┌────────────────┐ │ Adapters │
│ Web Frontend │◄──────────────┤ (Ports/Protocols)│
└────────────────┘ (HTTP) └────────┬────────┘

┌────────┴────────┐
┌────────────────┐ │ Infrastructure │
│ Databases │◄──────────────┤ (SQL, Redis,...) │
└────────────────┘ └─────────────────┘