/ 01 — The problem
What was broken.
Three product teams shipping identical buttons with subtly different paddings. Design drift. Two PRs per week just normalizing spacing. No shared visual language as the company grew past 80 engineers.
A design system that 6 product teams actually use. Tokens, primitives, monorepo, docs that don't lie.
Three product teams shipping identical buttons with subtly different paddings. Design drift. Two PRs per week just normalizing spacing. No shared visual language as the company grew past 80 engineers.
Started by writing the token layer in Figma + JSON, sync'd both ways. Built primitives first (Button, Input, Card) and gated every release behind a strict visual-regression CI. Wrote docs as runnable Storybook stories — no separate docs site to rot.
200+ components, 6 product teams onboarded over 4 months. FE ticket lead time dropped from 4 days to 2. Visual-regression catches design drift before PR merge.