One design system for six product teams
Six teams were rebuilding the same buttons and forms in six slightly different ways. A shared, tested component library turned that duplicated effort into one source of truth.
Every product team had its own copy of the basics. Interfaces felt inconsistent to users, accessibility fixes had to be repeated six times, and designers and developers worked from different sources of truth.
- 01Six copies of every component, none quite alike
- 02Accessibility fixes repeated across products
- 03Design and code drifting apart after every release
How we got there
Audit what exists
Inventoried every component in production, found the real overlap and agreed one set of design tokens as the single source of truth.
Build for adoption
Shipped a typed, documented and tested library with APIs clear enough that using it was easier than rebuilding.
Prove it in one product
Migrated the most visible product first, fixed the rough edges, then used it as the reference for everyone else.
Govern lightly
Contribution guidelines, visual regression tests and versioned releases so the system grows without breaking teams.
The shape of the change
A simplified before and after. The point is not the boxes, it is that each part can now change, scale and fail on its own.
- Interface work ships in about half the time
- Accessibility is fixed once and fixed everywhere
- Designers and developers share the same tokens
- New teams start from a tested foundation
- 01Adoption is a product problem: ship docs and examples with the code.
- 02Start with the components every team already agrees on.
- 03Visual regression tests make change safe enough to move fast.
“Our products finally feel like one family, and we ship interface work in half the time.”