Design
Phosphor
Quiet, dense, precise. Dim phosphor rather than neon.
A shared token file defines colour, typography, spacing, and motion. This website and the terminal palette use it today; the graphical shell and other planned surfaces follow the same design contract. Both light and dark modes are built from these values.
The mark has a stem, one trunk, and two branches. Its filled base node represents the only process designed to run as root.
The palette
One accent and a neutral scale. Web text colours are derived from the canonical tokens, adjusted toward body text until they meet at least 5.5:1 on the canvas, panels, and raised surfaces.
dark
light
Contrast is a test, not an intention
Every colour is chosen against a measured requirement, and those requirements are tests intacid-design. The numbers below are recomputed here, on this page, from the same token file — so if the palette ever regresses, the website says so before anyone files an issue.
| Mode | Requirement | Needs | Measured | Result |
|---|---|---|---|---|
dark | Body text on the background | 7:1 | 11.9:1 | pass |
dark | Muted text on the background | 4.5:1 | 6.7:1 | pass |
dark | The accent on the background | 4.5:1 | 10.5:1 | pass |
dark | Danger on the background | 4.5:1 | 6.7:1 | pass |
dark | Warning on the background | 4.5:1 | 6.7:1 | pass |
light | Body text on the background | 7:1 | 12.3:1 | pass |
light | Muted text on the background | 4.5:1 | 6.5:1 | pass |
light | The accent on the background | 4.5:1 | 7.2:1 | pass |
light | Danger on the background | 4.5:1 | 6.4:1 | pass |
light | Warning on the background | 4.5:1 | 6.4:1 | pass |
There is a further requirement the table cannot show: enough luminance between the accent and the semantic colours that a red–green confusion does not make two opposite meanings look the same. It is why success and the accent share a hue but danger does not sit beside them at the same lightness.
The sixteen colours a terminal needs, named rather than numbered
dark
light
Type, space, radius, motion
A fourth-root scale
Small enough steps to build hierarchy without shouting. The interface stops at 33px; this website continues the scale at its own average ratio for the three display sizes a page read at arm's length needs, rather than inventing them by eye.
- 12Linux with an agent
- 14Linux with an agent
- 16Linux with an agent
- 19Linux with an agent
- 23Linux with an agent
- 27Linux with an agent
- 33Linux with an agent
- 39Linux with an agent
- 46Linux with an agent
- 54Linux with an agent
- 64Linux with an agent
Space
A 4-pixel grid. Everything lands on it.
Radius
Motion
Only when it explains a state change, and never longer than it takes to notice.
instant0msquick120msconsidered240ms
The badges are part of the system, not afterthoughts
On a machine each one states something true right now, and a person can trust them because the design system owns them rather than each surface drawing its own.
Which is why this website's status line carries only two of its own, and neither of them is borrowed: this site is static and it calls nobody.
The rules
- One accent. A machine you work in all day should recede.
- Dark and light are equals, not a theme and its afterthought.
- Motion only when it explains a state change, and never longer than it takes to notice.
- Depth from the neutral scale, so borders are a last resort rather than a habit.
- No neon, no glass, no gradients, no sci-fi noise, no gamer styling.
- Semantic colours are used only when they mean something.
- Inter for interface text, JetBrains Mono for code. No font soup, no patched icon fonts.
- Themes are token files. A contribution cannot introduce a hard-coded colour.