Protocol specification — the open format
The ObjectStack protocol specification: how the Data, UI and System layers describe a complete business application as metadata, and its design principles.
The ObjectStack Protocol defines three interconnected layers that together describe a complete enterprise application:
ObjectQL: Data Protocol
Schema definitions, field types, state machines, query syntax, and data security.
ObjectUI: UI Protocol
Server-driven UI contracts for layouts, widgets, forms, and actions.
Kernel: System Protocol
Runtime lifecycle, HTTP/realtime protocols, plugins, configuration, and i18n.
All three layers move under one compatibility contract: which edits a MINOR may make, how long a
deprecated property survives before it can be removed, and which @objectstack/spec exports are
guaranteed stable within a MAJOR — see the Backward Compatibility
Policy.
Design Principles
- Zod-First — All schemas are defined in Zod for runtime validation and TypeScript inference.
- Database-Agnostic — The same object definition works across PostgreSQL, MongoDB, and SQLite.
- Declarative — Business intent is expressed as structured data, not imperative code.
For auto-generated API documentation of every schema, see the Protocol Reference.
Cluster Semantics
How ObjectStack stays correct from a single laptop to a multi-node cluster — event scope, service scope, leader election, and metadata versioning.
Protocol Relationship Diagram
Visual architecture diagram showing how ObjectStack's protocol layers connect — Data, UI, System, Automation, AI, API, and Security