Journal
Dense list rows with thumbs, excerpts, and sort — built for scanning an archive.

Combining accessible primitives with Tailwind to ship libraries that scale.
8 min

Why pure CSS theming wins — and how oklch keeps contrast honest.
6 min

Trade-offs between copy-paste collections and versioned packages.
5 min

CSS-first config, @theme, and @source — a practical migration path.
12 min

Keeping hundreds of a11y checks green across packages.
7 min

Perceptual uniformity and why oklch beats HSL for UI tokens.
9 min

Keyboard-first data display with full ARIA support.
3 min

Why CardHeader + CardContent beats a dozen props every time.
6 min

An accessible multi-step wizard with clear focus and state.
10 min

An automated safelist so every utility ships from node_modules.
8 min