FAQ
Short answers to the questions people ask first. If you haven’t yet, What is a mode? sets up the ideas these build on.
The idea
Section titled “The idea”What’s the relationship between this standard and Mise en Mode?
Section titled “What’s the relationship between this standard and Mise en Mode?”They’re not the same thing. Mise en Mode is an approach — set out in the book of the same name — for dressing a page in nested expressions: a look applied to a scope, another look nested within it, each resolving cleanly inside the other. This standard is that approach made portable on AT Protocol: the fixed intent vocabulary, the theme record, and the Mode Contract are how the approach travels between apps. The standard is based on Mise en Mode; it isn’t another name for it.
Isn’t this just design tokens?
Section titled “Isn’t this just design tokens?”It’s design tokens made portable and owned. Design tokens usually live inside one product and describe that product’s look. This standard uses the same instinct — name a value by its job, not its raw color — but standardizes the set of jobs so a look can move between apps, and stores it on your account instead of in an app’s codebase. The shared vocabulary and the ownership are the new parts.
Is it a CSS framework? Does it come with components?
Section titled “Is it a CSS framework? Does it come with components?”No. The standard describes looks — it never ships buttons, layouts, or components. You keep your own components; the standard just tells them what a “primary action” or “body text” should look like for the person viewing. Two apps with completely different interfaces can honor the same look.
Why describe things by “job” instead of just picking colors?
Section titled “Why describe things by “job” instead of just picking colors?”Because raw values don’t travel. One app’s “blue button” is another’s “link,” and a color that reads as primary in one layout disappears in another. If you hand an app a bag of colors, it can’t know what to do with them. Naming the job — “the color of a primary action” — gives every app something it already understands. That’s what makes one description work everywhere. More in What is a mode?.
What’s the difference between a theme, an expression, and a mode?
Section titled “What’s the difference between a theme, an expression, and a mode?”A theme is a complete look you save. Its expression is the reason it exists — the concept it serves, like “Easter” or “my midnight look.” A mode is that theme actually switched on for part of a page. One saved thing (theme), the why (expression), the look in use (mode). The glossary in the intro lays them side by side.
Using it
Section titled “Using it”Do I have to fill in all 33 intents?
Section titled “Do I have to fill in all 33 intents?”Not all 33 — but you can’t half-fill an aspect. A look can be color-only, typography-only, or both. Whichever aspects you include must be complete: if you give colors, you give all of them; if you give typography, all of it. This is per-aspect completeness, and it’s what lets a look paint its slice cleanly without half-finished merges. See the Schema reference.
Can I have more than one look?
Section titled “Can I have more than one look?”Yes — as many as you like. Each theme is saved separately under the expression it serves (its record key), so you might keep a light look, a dark look, a brand look, and a seasonal one. Your baseline is simply the one you save at the reserved key default.
Can I use someone else’s look as my own?
Section titled “Can I use someone else’s look as my own?”Yes. Looks are freely shareable — anyone’s theme is a public record you can read. Adopting one is fork-and-copy: your tooling writes its values into a theme of your own (at default, or at whatever concept you want it to serve). Each theme is self-contained, so your copy is yours to keep and tweak — it doesn’t break if theirs changes or disappears.
What sets the color of text?
Section titled “What sets the color of text?”The surface it sits on. Text intents carry size, weight, font, and spacing — but not color — because readable text color depends on its background, which the surface already defines. This keeps text legible wherever it lands.
Can I ship my own fonts?
Section titled “Can I ship my own fonts?”Yes. A typography look can carry font faces — either a URL or an actual font file stored on your account (preferred, since it travels with you and can’t rot). A given font is declared once no matter how many text styles use it. Details in the Schema reference.
When looks meet
Section titled “When looks meet”If a brand and I both define a look, whose wins?
Section titled “If a brand and I both define a look, whose wins?”Yours, where you’ve defined it. When several looks are in play — the app’s, the content author’s, and yours — they’re resolved per aspect, and the viewer takes precedence. If you’ve defined the colors for a concept, your colors show; anything you haven’t defined falls through to the next source rather than blending. The precise order and procedure are the Mode Contract.
How do our looks even line up — how does it know they’re “the same”?
Section titled “How do our looks even line up — how does it know they’re “the same”?”Through the expression — which is the theme’s record key. If Home Depot applies an “Easter” look to a section and you’ve saved your own theme at key com.homedepot.easter, both name the same concept, so an app can honor yours in place of theirs. Two looks match only when their record keys are exactly the same string — no fuzzy matching and no blending. (One look can serve several concepts, but that’s several self-contained records — one per key, same values, kept in sync by your tooling — not one record with many names.) See “Why an expression?” and the contract’s matching rule.
Does a look guarantee good contrast or accessibility?
Section titled “Does a look guarantee good contrast or accessibility?”No — and it doesn’t try to. The standard describes what a look is, not whether any particular pairing is legible; that stays the responsibility of whoever authors the look and whoever renders it. Apps keep their discretion to protect readability. The Mode Contract is explicit about where an app may step in.
The ecosystem
Section titled “The ecosystem”What kind of account do I need?
Section titled “What kind of account do I need?”An AT Protocol account — the same kind of account that carries your identity on the network Bluesky is built on. Your look is saved there, alongside the rest of what you own on that network. There’s no separate account or server just for looks.
Is this locked to Bluesky?
Section titled “Is this locked to Bluesky?”The delivery runs on the AT Protocol, so that’s where looks are stored and fetched today. But the idea — describing a look by intent and owning it — isn’t tied to any one app. Any app on the network can choose to honor looks; Bluesky is just the best-known thing built on the same plumbing.
Does an app have to support this for my look to appear?
Section titled “Does an app have to support this for my look to appear?”Yes. This is a standard apps opt into — an app reads your look and renders accordingly only if it’s chosen to. Where an app doesn’t support it, your look simply isn’t applied there; nothing breaks. The value grows as more apps participate.
Who decides what “Easter” or “critical” means? Is there a central registry?
Section titled “Who decides what “Easter” or “critical” means? Is there a central registry?”No one owns the list — there isn’t one. An expression is just a string, so anyone can coin one, and useful concepts converge over time as people adopt the same name. This site shows some common expressions as examples, and the convention for naming your own, but nothing there is required or reserved. Common concepts (like dark) are simply the obvious shared spelling; your own live in a namespace you control (com.alice.midnight).
If the standard grows, will my saved look break?
Section titled “If the standard grows, will my saved look break?”No. Growth is additive only — new intents, new jobs, even whole new aspects arrive as optional additions. A look you save today keeps working forever, exactly as saved, even as the vocabulary expands around it.
Still have a question?
Section titled “Still have a question?”- What is a mode? — the concepts, in plain language.
- The Mode Contract — the precise rules for resolving and rendering.
- Publish a theme — save a look to your account.
- Render themes in your app — honor people’s looks in what you build.