Donnie D'Amato on stage

Use Nested Modes Instead of New Tokens for Expressive Moments

Recursive Fashion

Making a design token for every decision leads to bloat and unmaintainable resources. There's another way which keeps the count low and the expressions infinite.

On this page

Decision

Scope expression with nested modes (Mise en Mode): visually box a region, then supply new values to existing semantic tokens only within that scope, rather than creating dedicated tokens per expressive moment.

Alternatives Considered

Create dedicated tokens for each expressive moment

👍 Pros 👎 Cons
Explicit and easy to manage Token bloat
Erodes the meaning and usage
Every new idea is a few new tokens to maintain

One-off component variants

👍 Pros 👎 Cons
Localized to the component The expression is locked inside one component, so it can’t be reused
Doesn’t compose across a region of mixed elements

Reasoning

Moving semantic responsibility from tokens to scopes resolves the tension between expression and consistency. A boxed region becomes a place for a new expression by receiving new values for the same semantic tokens, no new tokens required, so the system stays bounded and coherent.

Why it mattered

Mise en Mode reframed the question from “what token do I add?” to “what scope receives a new expression?” That shift is what lets a system stay consistent and still feel expressive where it counts.

All decisions
Schedule a chat