Two interfaces, one platform
Admin console & app runtime
Admins configure the platform in a 160-page console. Users get an application generated from that configuration — lists, records, dashboards, pages, chat — with no code in between.
For admins
The admin console
Everything a Salesforce admin expects, and the things they wish they had: a flow canvas, a page builder, sandboxes with diff and promote, an OpenAPI importer, and monitoring that shows the actual requests. Every setting is metadata, so what you click is what the API, the CLI, and your AI agent see.
Lives at /{tenant}/…; the app at /{tenant}/app/…. Setup is searchable: ⌘K
jumps to any of the areas below.
Data model
- ✓ Collection wizard — create a collection, its fields, and a default layout in one pass
- ✓ Field editor for all 28 types: lookups, master-detail, formulas, rollups, auto-numbers, rich text
- ✓ Picklists with dependencies and record-type overrides
- ✓ Page layouts: drag sections and fields, per-profile assignment
- ✓ List views with saved filters, column choosers, and sharing
- ✓ Validation rules and unique constraints with a live tester
Security
- ✓ Users, profiles, groups, and delegated admins
- ✓ Object CRUD and field-level security editors with an authorization tester
- ✓ OIDC providers, password and MFA policies, network access rules
- ✓ Login history, security audit, and the setup audit trail with before/after values
- ✓ Personal access tokens with scopes and revocation
Automation
- ✓ Flow designer — a React Flow canvas for the 8 state types and 19 action handlers
- ✓ Execution log per run, step by step, with input and output snapshots
- ✓ Approval processes with multi-step approvers and an approvals inbox
- ✓ Scheduled jobs with cron, timezone, and next-run visibility
- ✓ AI agents: define a governed agent, its tools, and its budget, then run it
- ✓ Scripts (server-side hooks) and email templates
Integration
- ✓ Connected apps (OAuth clients) and a vaulted credential store
- ✓ API specs: import an OpenAPI document, browse it, materialize endpoints as collections
- ✓ Inbound and outbound webhooks with delivery history
- ✓ Support mailboxes and campaigns for email in and out
- ✓ Runtime-installable modules and plugins
Experience
- ✓ Page builder: drag-and-drop widgets — layout, tabs, nav, forms, data tables, charts, metrics, images, links, chat, video visits, appointment scheduling
- ✓ Menu builder for app navigation, per profile
- ✓ Dashboards and reports over any collection
- ✓ Translations for every label the runtime shows
- ✓ Analytics settings for embedded Superset
Platform
- ✓ Environments: create, refresh, diff, and promote sandboxes
- ✓ Packages and migrations for metadata as versioned artifacts
- ✓ Monitoring: request log, endpoint performance, error dashboard, log viewer, config health
- ✓ Governor limits with live usage per tenant
- ✓ Tenant dashboard, search index, bulk jobs, deduplication
For users
The app your users get
Define a collection and it is immediately browsable, editable, and searchable — with the layouts, list views, menus, and pages the admin chose. Change the metadata and the app changes; nobody redeploys anything.
Lists that fit the work
Every collection gets table, kanban, gallery, and calendar views out of the box. Filter builder, column chooser, inline editing, CSV import, and saved list views that admins can share by profile.
Records with everything attached
Layout-driven detail pages with sections, related lists, attachments, notes, activity timeline, and field history. Quick actions and approval buttons live where the record is.
Realtime, not refresh
Presence avatars show who else has the record open; live updates arrive over WebSocket. Chat console and video visits (LiveKit) are built in for teams that talk to their customers.
Home, search, and custom pages
A per-user home dashboard, global search across every collection (⌘K), and any page the admin built in the page builder rendered from its configuration at runtime.
Dashboards, reports, analytics
Metric, chart, and record widgets on dashboards; saved reports; an analytics hub that embeds Apache Superset for the heavy lifting.
Ask the assistant
The in-app AI panel knows the tenant schema. It answers questions about data, drafts records, and proposes schema changes that an admin approves before anything happens.
Built on the same rules everywhere
React 19 · Vite 7 · TypeScript · Tailwind 4
One codebase for admin and runtime; lazy-loaded routes per page.
Multi-tenant routing
/{tenant}/… for setup, /{tenant}/app/… for users, custom domains supported.
RBAC everywhere
Route-level and field-level guards; the backend enforces every permission again.
WCAG 2.1 AA
Skip links, live regions, focus management, keyboard shortcuts, dark and light themes.
⌘K command palette
Jump to any setup page or record; the same palette powers global search.
Same API as everyone else
The UI is a client of the public JSON:API — nothing it does is off-limits to your code or your agent.
See both sides in ten minutes
Run the stack with docker compose, sign in as the tenant admin, build a collection, then open the app as a user — or let your AI agent do the building over MCP.