Skip to content

Characteristics

  • Schema-Driven: Applications declaratively define Templates and Relations. This represents the data structure of your application. This can be further enhanced by Unions.

  • Schema-first: Applications are defined declaratively via a builder DSL that compiles to immutable definition objects (similar to GraphQL SDL → schema)

  • Hierarchical: Items form a rooted tree structure with parent-child relationships and key-path addressing

  • Event-driven: First-class event primitives with listener registration, bubble propagation up the hierarchy, and cron scheduling

  • CQRS: Strict separation between read paths (Query/ReadRuntimeInstance) and write paths (Mutation/WriteRuntimeInstance)

  • Relational: Typed relations between templates with explicit cardinality constraints (1:1, 1:N, N:1, N:N)

  • Stateful: Templates embed finite state machines with typed transitions

  • Role-based: Declarative RBAC at both application and entity levels with grant-based property access

  • Modular: Applications compose via dependency injection with topological resolution

  • Multi-tenant: All entities (Item) are workspace-scoped with tenant isolation at the data layer