Chapters

Drag to move · Hover to trace. Select to read more. Keyboard: Alt + arrow keys to move.

Request architecture
Web ClientUse Filmclusive in a browserAPI TransportCarries a request to the serverRequest BoundaryChecks a request before work startsApp CheckChecks the app making a requestFirebase AuthChecks who is signing inPermission / CapabilityWhat someone is allowed to doExternal ProviderA connected third-party serviceDomain ServiceChecks and carries out a requestFirestoreStores the application recordsStorageStores documents, images and videoFunctions / JobsProcesses work in the backgroundResponse projectionOnly the data this person may receive
  1. Web Client
  2. API Transport
  3. Request Boundary
  4. App Check
  5. Firebase Auth
  6. Permission / Capability
  7. External Provider
  8. Domain Service
  9. Firestore
  10. Storage
  11. Functions / Jobs
  12. Response projection
Transport, authentication, authorization, domain work and response projection remain explicit responsibilities.

Drag a card to rearrange it. Select it to learn more.

Connections in words

Transport, authentication, authorization, domain work and response projection remain explicit responsibilities.

Explicit transport

Public, Firebase-authenticated and session-authenticated interactions use defined transport contracts. A feature does not guess the identity boundary from a URL.

Admission and dispatch

The request boundary applies route policy, firewall admission and the declared method contract. Lazy route-group loading keeps unrelated handler graphs out of a request’s initial path.

Scoped domain work

Authentication establishes the principal. Current membership, capability and subject access determine permitted work. Domain commands own transitions; scoped adapters read or write canonical records.

A minimal response

Return only the fields the caller may receive. Serialized UI data, metadata and public projections are disclosure boundaries too. Reaching a route does not establish correct authorized behavior.

Follow each request boundary
  1. 1Web Client
  2. 2API Transport
  3. 3Cloudflare Edge
  4. 4Request Boundary
  5. 5Firebase Auth
  6. 6Permission / Capability
  7. 7Domain Service
  8. 8Firestore
  9. 9Response projection
  10. 10Web Client
Open a step to inspect its responsibility. Provider effects branch from domain services.
Go deeper

Conceptual architecture. Implementation and release status are assessed separately.