Features
Everything between a design and a live screen
SDUI is the portal and delivery layer. Rendering on the device is done by Stac, an open-source Flutter package.
Editor
Design view
Drag widgets from the library onto a phone or tablet frame, reorder them in the layers panel and edit properties in a generated form.
Code view
See the exact Stac JSON that will ship. Edit it and the design updates; invalid JSON is flagged inline and never saved.
Autosave
Drafts save 1.5 seconds after you stop typing. The toolbar always shows whether your work is saved.
On-tap actions
Buttons and list tiles can navigate to another screen, call a saved API endpoint, or show a snackbar or dialog.
Publishing
Strict validation
Every key, enum value and colour is checked against the Stac 1.5 contract before a version is created.
Versions
Each publish creates a numbered, immutable version with who published it and when.
Rollback and unpublish
Point a screen back at any earlier version, or take it offline. No new build needed.
Templates
Start a new screen from a published template instead of a blank page.
Delivery
Bare Stac responses
The screen endpoint returns the widget JSON that Stac.fromNetwork expects, with ETag and version headers.
Edge caching
Responses are cached at the CDN for 30 seconds and served stale while they refresh, so traffic spikes stay off the database.
Stable URLs
A screen keeps its URL when you rename it. Changing the URL is a separate step that warns you about live apps.
Keys and accounts
Publishable keys
Project keys can only read published screens. They are safe to ship inside your app.
Key rotation
Rotate a key at any time. The previous key keeps working for 7 days so installed apps are not cut off.
Plans
Plans set how many projects and screens you can create. Contact us to change plan until self-serve billing is available.