Incident Desk
A polished incident operations product that exercises Trestle authentication, typed records, access rules, realtime events and files through published HTTP contracts.
What it proves
Real application users
Registration, login, access-token refresh and ownership rules run through Trestle.
Typed operations
Incidents and updates use schemas, validation, optimistic versions, filters and sorting.
Live and durable
SSE refreshes the workspace while files remain bound to incident records.
Run the example
git clone https://github.com/trestle-dev/trestle-example
cd trestle-example
TRESTLE_ADMIN_EMAIL=admin@example.com \
TRESTLE_ADMIN_PASSWORD='choose-a-real-password' \
npm run bootstrap
nift build
npm startOpen http://127.0.0.1:4173 and create an application account. Bootstrap is idempotent and saves its copy-once service credential in an ignored, owner-only configuration file.
Architecture and authority
The browser uses application-user tokens for record operations. A dependency-free Node companion exposes a strict route allowlist and holds one service credential scoped to realtime reads and file operations. It cannot administer collections, users, backups or integrations.
browser
-> Incident Desk same-origin server
-> Trestle HTTP API
-> SQLite, event journal and file storageThe example never imports a Trestle Go package and never opens the SQLite database. Replace the vanilla frontend or Node companion with your preferred stack while keeping the same boundary.