Patchbay
The design system behind Switchboard, one MCP endpoint that routes each agent request to the right upstream servers and skills. Upstreams are lines, the Switchboard URL is the trunk, routing is patching. Everything here is built from @switchboard/ui, including this site.
Principles
Where the system's choices come from.
- Quiet chrome, live signal
Everything is neutral except the one thing that is alive: which lines are patched in and carrying calls.
- The lamp
An 8px indicator beside every server and skill. It is the only glow in the interface.
- Identifiers are typeset, not decorated
Tool names, URLs, slugs and config are set in Plex Mono because people type them into other programs. Nothing else is.
- One trunk
The Connect page treats the MCP URL as the hero: a plate with screw dots. It is the one bold moment.
The thirteen rules
Adopted from Cloudflare's Kumo guidelines. Components already follow them; screens built from components should too.
- Content text is 14px. Larger sizes are for headings only.
- Sentence-case headings; product names in title case.
- Never change tracking. Never use bold: semibold for headings, medium for inline emphasis.
- Related text sits closer together than the content around it: 6px inside a group, 24px outside.
- Optical padding: vertical padding a little smaller than horizontal.
- No colour transitions on hover. Hover is instant.
- Never combine a border with a drop shadow; use a 1px ring instead.
- Concentric radii: outer radius equals inner radius plus padding.
- Inline icons are text height and centred on the first line.
- Inline monospace is about 0.9em.
- Sticky headers separate from content with a border, not a shadow.
- Never nest a layer card in a layer card.
- Dialogs stay mounted and animate through open, never by conditional rendering.
Start here
- 107 tokensTokensColour in both themes, type, space, radius, elevation and motion.
- 46 iconsIconsThe Lucide set the components use. Search and copy a name.
- 81 pagesComponentsEvery primitive and composite with live examples, props and guidance.
- 4 templatesPatternsServers, server detail, skills and connect, composed as templates.