Five Below Design System
Rebuilding the design foundation of a growing retailer — so one decision ships everywhere, automatically.
Two sources of truth, zero shared language
Designers shipped high-fidelity Figma files; engineers re-typed every hex code, spacing value, and radius by hand. The audit told the story: 214 screens, 41 components — and six different opinions of the same button in production.
The symptom
Constant visual regressions, QA time sunk into logging padding bugs, and a brand that drifted a little further on every release.
The cost
Every new feature paid a redundant design-and-rebuild tax — inflating timelines beyond what the business could sustain.
How might we make one design decision propagate to every page — without a single handoff meeting?
A token pipeline that erased the handoff
Every design decision became a semantic token that exists identically in Figma and in Tailwind. What a designer applies in the tool is exactly what an engineer ships in the browser.
One shared component library
Design decisions travel like code
Feature spin-up went from weeks to days — and visual QA bugs nearly disappeared.
What made it stick
Audit before opinion
We inventoried 214 screens and 41 components first, so every consolidation argument was a screenshot, not a taste debate.
Semantic tokens, not raw values
Naming decisions (color.brand.500, space.4) made them portable across Figma, Tailwind, and documentation — and future-proofed rebrands.
Governance through pull requests
Token changes ship as reviewable PRs. Design gained a change-log; engineering gained predictability; QA gained a day back.