Platform Overview
What It Is
Jetstack is a configurable platform for building business applications inside a tenant. Instead of hardcoding a complete application for each use case, you define a reusable model and let the platform assemble the runtime behavior from that definition.
In practice, Jetstack combines:
- an object model layer built from types and properties
- a data access layer built from queries and filters
- a presentation layer built from views, modules, and canvases
- a logic layer built from automations and scheduler tasks
- a governance layer built from roles, permissions, groups, users, translations, and tenant settings
- an integration layer built from REST, MCP, webhooks, AI tooling, and operator-focused utilities
What It Is Not
Jetstack is not only:
- a CRUD generator
- a website CMS
- a standalone workflow engine
- a thin UI shell over SQL tables
Those things may appear inside the platform, but the platform itself is broader. It is closer to an implementation framework where model, UI, logic, access, and operations stay connected.
Why It Matters
Jetstack becomes valuable when a tenant needs:
- multiple object types with relationships
- configurable forms and list experiences
- dynamic business rules without custom code for every rule
- role-aware access and object-aware permissions
- reusable navigation and public entry points
- operational lifecycle support such as translation, versioning, and sync
The Main Building Loop
A typical implementation follows this loop:
- Define types.
- Add properties.
- Create queries that express useful object sets.
- Expose them through views or canvases.
- Place them in navigation through modules.
- Add automations and schedules.
- Secure everything with roles, permissions, and settings.
That loop is repeated throughout the product.
The Runtime Model
Jetstack's runtime is shaped by a small set of repeated concepts:
- model definitions describe what the tenant contains
- runtime state describes how users are currently filtering, viewing, grouping, or acting on that model
- evaluation engines turn configuration into live behavior
- operator surfaces control rollout, governance, and diagnostics
This matters because many fields in Jetstack do not behave as static text. They are evaluated through expressions, scope resolution, permission logic, or filter translation at runtime.
Architectural Layers In Practice
Data Model Layer
This is where types and properties live. It defines the structure of the tenant and the meaning of stored values.
Access And Retrieval Layer
This is where queries, filters, grouping, calculations, tags, and folder context live. It defines what data a user or integration is working with.
Interaction Layer
This is where views, modules, canvases, forms, and actions live. It defines how users experience the model.
Logic Layer
This is where automations, scheduler tasks, and event-driven behavior live. It defines what happens when work is performed or when time passes.
Governance Layer
This is where roles, permissions, groups, versions, sync, translations, customization, and app settings live. It defines who can do what and how the tenant is operated.
Integration Layer
This is where REST, MCP, webhooks, AI agents, sidecar services, and advanced tools live. It defines how Jetstack participates in a larger system landscape.
How The Codebase Reflects The Platform
The codebase exposes the platform surface mainly through:
- resource types under
app/model/ActiveResource/ResourceTypes - property family implementations under
PropertyTypes - presenter surfaces under
app/Presenters - shared runtime services under
app/model/libs - API modules under
app/api - AI sidecar runtime under
ai-sidecar
You do not need to read those files to use the platform, but this documentation uses them as the source of truth for platform behavior.
Example
A procurement tenant might contain:
Supplier,Contract,Request, andInvoicetypes- properties describing status, amount, owner, and document references
- queries for draft approvals, expiring contracts, and overdue invoices
- views for buyers, approvers, and finance
- modules for Procurement, Contracts, and Administration
- automations for assignment, approval escalation, and reminders
- permission queries that limit who can edit financial records
Each of those pieces is configured separately, but they work because they share the same underlying platform model.
What To Learn Next
After this chapter, the most important next concepts are: