Everything we’ve published, in order
- May 12, 2026Engineering
How we built the Nebula color engine
OKLCH derivation, role-keyed tier overrides, and the lookup that replaced 1,200 lines of CSS.
- May 09, 2026Motion
Aurora at 90fps: keyframe budgeting
What we cut from the timeline pass and why the playhead now feels true under load.
- May 06, 2026Research
Orion-A: the contrast law
A single equation that keeps surface pairs legible across every tier override.
- May 02, 2026Design
Notes from the Constellation editor
Drag-to-token snapping and the gestures that finally read as physical.
- Apr 28, 2026Field
Pulsar & Helix ship the spring releases
Two surface packs, one shared substrate, and what we learned wiring them through.
- Apr 24, 2026Product
Behaviours panel: wires that survive refactors
cid-keyed instances, not DOM-keyed — and why that matters when the page rerenders.
- Apr 19, 2026Engineering
The .lsd package is the public contract
Versioning palettes, tier maps and behaviours as a single transferable artifact.
- Apr 14, 2026Motion
CSS-first motion, JS complementary
When the keyframe is enough, and when lsd-physics earns its bytes.
- Apr 09, 2026Voice
Naming the cosmos: Nebula, Orion, Vega
The vocabulary that earned its keep — and the names we quietly retired.
- Apr 03, 2026Studio
Token-snap drag and the gestures that feel true
Snap to the next token in scale, not raw pixels — a quiet differentiator.
- Mar 28, 2026Research
Surface-aware components: a layout-only contract
Components describe layout. Color comes from context. The bridge is one CSS variable.
- Mar 21, 2026Field
The day the DAW vocabulary clicked
Layers, tracks, beats. Why Aurora reads as a timeline, not a tween editor.