Skip to content

App reference

Look up any key an App declares, and the call or the code behind each part.

An App is declared in one file, apps/[app]/app.mdx, over the Nouns the Startup defines. Each key below links to the chapter that explains it.

The App definition

apps/[app]/app.mdx declares one App. Frontmatter only.

KeyTypeRequiredHolds
kindsaas | admin | directory | commerceThe App kind; saas when unset
mountpathWhere it serves on the Domain; /app, or /admin for admin
nounsNoun namesrequiredThe Nouns it shows, a list and a record screen each
personasmapEach Persona who signs in
personas.*.mayVerb idsThe Verbs that Persona may call; each one is a button and a form
slotsmapA Component per slot: list.toolbar, list.empty, record.header, record.aside, record.actions, record.tab, form.after, dashboard.section
apps/portal/app.mdx
---
kind: saas
mount: /app
nouns: [Lease]
personas:
  manager: { may: [Lease.create, Lease.renew, Lease.notify] }
  resident: { may: [Lease.get] }
slots:
  record.aside: Timeline
---

The Product that sells it names App in its $type, in a product file.

Verbs

VerbWhat it doesStatus
App.publishServes the newest build to every Tenantlive
Version.deployPoints the App at a Version, the previous one to roll backlive
Tenant.provisionMakes a Customer's Tenant when it accepts an Offerlive
Tenant.inviteAsks a person to join a Tenantlive
App.pauseStops serving the App's screens while the API keeps answeringplanned
Tenant.requestSupportAsks a Tenant's admin for time-limited support accessplanned

Build it in code

PartCode
Screens and componentsUI components
Records and queriesDatabase
Sign-in, sessions and keysAuth
Uploads and documentsStorage
The Function behind each VerbFunctions
Live updatesRealtime
Errors, logs and uptimeMonitoring
One replaced screenViews
The folderapps/[app]/