Overview

The frame

The dashboard is what this is, what it never stores is what it is not, the connection is what makes any pane show anything, and roles and permissions is what you can see.

PartWhat it is
barThe top strip: wordmark, project, environment
status bandThe saffron strip under it: endpoint, facts
railThe left column: the kinds
indexThe middle column: the things of the chosen kind
recordThe right column: one thing, in full

Rail, index and record together are the body. Any one of the three is a pane.

The triad is meaning, not layout

The rail names a kind of thing. The index lists the things of that kind. The record fills the body with its details.

Left to right, always, whatever the things are.

Which is why the index is not a submenu: it lists rows, not destinations.

What you see depends on what you composed

The dashboard composes its navigation and its calls from your Worker’s manifest, rather than from settings somebody maintains.

So a Worker that does not compose payments has no purchases pane — and that is a fact the client discovers rather than a feature somebody remembered to hide.

Run pithy add support and a working support pane appears on the next visit — panes and the calls behind them, with nothing for either side to configure.

Composed-but-empty is not the same as not installed

A capability with no management surface reports an empty list rather than being absent.

Composed, but nothing to administer and not installed are different facts, and a client that cannot tell them apart renders the wrong thing for both.

Knowing a capability is installed is not enough to call it

Every mount point is configurable. A dashboard that hardcoded /payments would 404 against exactly the adopters who customized anything.

Each capability builds its manifest entry from its resolved config, so the paths name where things actually are.

Grayed out, not offered and refused

Each declared route names the scope it needs, and the manifest reports what you granted.

So an action you did not grant is unavailable rather than a button that answers 403.

Everything here is live

Nothing is cached. Your users, purchases, audit events and support mail are fetched from your Worker, rendered, and discarded.

The moment we held a copy, we would have become the thing this architecture exists to avoid.

The panes

Your data: Users · Purchases · Subscriptions · Entitlements · Audit trail · Support inbox · Email jobs · Feedback

Your project: Connection · Capabilities and versions · Migrations · Secrets · Tokens · Reconciliation · Cache

Yours: Settings and profile · Notifications

ESC