Snapshot for
@system-core/core0.8.x. Current docs live at /.
Architecture
System Boundaries
The runtime is organized around one primary entrypoint and a small set of package-owned surfaces.
Primary Layers
| Layer | Purpose |
|---|---|
core | Unified bootstrap and package-owned runtime assembly |
logic | Framework-agnostic backend primitives |
cms | Content, media, navigation, forms, site-builder, and related services |
auth | Persistent auth, RBAC, onboarding, sessions, user lifecycle |
delivery | Delivery settings and mail/SMS runtime wiring |
storage | Managed media storage runtime and provider settings |
platform | Hooks, events, observability, policy, plugins, tenancy, queueing |
Architectural Rules
- Use
createSystem()as the single bootstrap for full applications. - Use package exports only. Do not import internal
core/...files from downstream apps. - Keep framework concerns inside adapter layers.
- Extend through platform surfaces and module APIs before adding parallel custom systems.
What Owns What
| Concern | Owner |
|---|---|
| App bootstrap | @system-core/core |
| HTTP abstraction | integration adapters |
| Interactive auth and sessions | system.auth |
| CMS content and media | system.cms |
| Email/SMS operator settings | system.delivery |
| Active media destination settings | system.storage |
| Hooks, events, plugins, policy | system.platform-related exports under @system-core/core/platform |