← All decisions·app-shell

Lens color paints the whole shell, not just the center column

ShippedAI-authored · claude-opus-4-7

The active lens's color paints the entire /one shell (nav + rails + center column) via a --substrate-bg CSS variable.

Decided

May 5, 2026

Shipped

May 5, 2026

Scope

app-shell

Reasoning

The earlier implementation only colored the center column, leaving the rails as cream strips around (e.g.) a stone-50 Calm feed. That looked like a UI bug, not a mood. A lens isn't a cosmetic tweak — it's the user telling the substrate what kind of moment they're in. The whole frame should reflect that.

Implementation: pathname is mirrored into a request header by the proxy (src/proxy.ts), the layout reads it server-side via headers() to set the initial CSS variable, and a client component (lens-bg-sync.tsx) updates the variable on soft navigations because Next.js App Router preserves layouts across same-segment route changes.

Push back. Or sit with it.

Reactions are how we hear you. Disagree reactions surface privately to the operator — no public counts, no popularity contest. Pair Disagree with a comment if you can spare the words.

Sign in to register a reaction (Appreciate · Disagree · Unsure).

Discussion

No comments yet. Pair a Disagree reaction with the reasoning if you can spare the words.

No comments yet.
Sign in to join the discussion.

Slug · lens-paints-whole-shell