Native desktop components for GPUI.
A design system, component library, semantic automation layer and visual test kit. Surfaces group with colour rather than lines, every word is replaceable, and every state is the state it claims to be.
76builders
29views
82verified scenes
164gate-checked images
node-graph
data-grid
conversation
dialog
settings
ide-shell
Four rules that fail a build
These are not review comments. A change that breaks one does not land.
- No literal a reader reads. Text the library authors is named by a
StringKeyand read from the installed catalogue, so a host can replace any of it. Text the caller passes in is the host's, and shown verbatim. - No hard-coded visual value. Colour, spacing, radius, type, motion and effect come from one token document through the theme.
- States are distinct and truthful. Loading, Empty, Unavailable, Error and Ready are five things. A refresh failure keeps the last verified value on screen. A host refusal is shown as a refusal, never as empty data. A disabled control does not install its handler at all.
- Anything actionable carries a stable semantic id, derived from business identity rather than list position.
Built for an agent as much as for a person
The API on this site is generated from the source and checked
by the gate, so it cannot drift from the library. There is a
llms.txt, a machine-readable
index, and an MCP endpoint at
/mcp that answers the same questions in one call.
cargo run -p xtask -- gate # fmt, check, test, clippy, tokens, strings, api
cargo run -p xtask -- scenes capture badge # render what changed
cargo run -p xtask -- scenes check badge # compare against the committed image