0 Protan Prism
0 Protan Prism is a dark/light Zed theme family designed for strong protan color vision. It uses a blue/yellow perceptual structure, deliberate lightness differences, code context, and restrained font weight instead of relying on red/green separation.
Variants
0 Protan Prism— neutral#111111dark canvas0 Protan Prism Light— bright#FAFAFCeditor and sidebar with visibly separated gray chrome
Both variants preserve the same semantic roles and color families. Cyan functions, magenta keywords, coral strings, lavender numbers, and gold classes adapt their brightness and saturation to each canvas. Functions, types, keywords, control flow, strings, values, properties, attributes, and brackets remain recognizable when the operating system changes appearance. The sidebar uses the editor canvas in both variants so the workspace reads as one continuous surface.
Design principles
- Yellow/ochre brackets provide the strongest structural landmark.
- Semantic green is avoided; success uses cyan.
- Important roles differ through lightness, grammar position, punctuation, spelling, and modest weight—not hue alone.
- Function definitions use
600; calls, types, constructors, and component identities use500; ordinary syntax stays regular. - Member properties remain visibly separate from base identifiers without added boldness.
- Matching bracket pairs receive a subtle yellow/ochre background.
Install from the Zed marketplace
- Open the Zed extension gallery with
cmd-shift-xon macOS orctrl-shift-xon Linux and Windows. - Search for
0 Protan Prism. - Select Install.
- Choose
0 Protan Prismor0 Protan Prism Lightfrom the theme selector.
Until the first marketplace release is approved, install this repository using the zed: install dev extension action.
Files
src/0.tokens.json— dark and light palettes plus shared semantic aliasessrc/0.tokens.schema.json— source validationscripts/build.mjs— generator, installer, and contrast checksDESIGN.md— palette and accessibility contractextension.toml— Zed extension metadatathemes/0.json— generated Zed theme family containing both variants~/.config/zed/themes/0.json— installed copy used by Zed
Commands
npm run build
npm run install:local
npm run check
npm run check:marketplaceinstall:local writes the generated family atomically to Zed. check verifies that the source, marketplace file, installed file, required UI states, syntax weights, semantic-token rules, and contrast floors agree. check:marketplace validates the committed marketplace artifact without depending on personal Zed settings.
To select the variants automatically, use system mode. You can also choose either variant directly from Zed’s theme selector:
{
"theme": {
"mode": "system",
"dark": "0 Protan Prism",
"light": "0 Protan Prism Light"
}
}Brian's perception in real code is authoritative; simulation and numeric contrast are safeguards, not substitutes for direct use.