Building Nucleus.
A CSS framework built to be correct for both a developer and the AI tools now writing a share of the markup.
Problem
Every product here needed a CSS foundation that wouldn't drift into inconsistency as AI-assisted development accelerated how fast markup gets written.
Research
Existing frameworks documented themselves for humans and left AI coding assistants to guess at class names from training data: a gap that produces invented classes and silent inconsistency.
Design
Every class, component, state, and token had to be described in one manifest: human-readable documentation and a machine-readable reference generated from the same source, not maintained twice.
Engineering
697 classes, 76 tokens, 60 components, 0KB of runtime JavaScript. A CLI validator checks a project's markup against the manifest and catches any class that doesn't exist: the enforcement mechanism that makes 'no invented classes' true rather than aspirational.
Tradeoffs
No JavaScript runtime meant every interactive state had to be solvable in CSS alone: a real constraint on what's possible, accepted because it also means zero hydration cost and a more accessible default.
Outcome
Released as a public package, `@navitallabs/nucleus-css`, with `ai-setup` commands for Claude Code, Codex, Cursor, and Antigravity. Used internally across both live products.
Lessons
Publishing the manifest publicly forced a discipline that would have been easy to skip building it only for internal use: every class really does have to earn a place in the documentation.
