← Back to the journal
DesignSystemsWorkflow

Design systems that actually work

How a design system can carry creativity rather than constrain it — through tokens, components, and documentation people actually use.

Design systems have a divided reputation. To some they're order and speed; to others a corset that irons every idea flat. After a handful of projects, I'm convinced the difference isn't in the system itself, but in the attitude you build it with.

A system should carry, not chain

The best design system takes the same recurring decisions off my plate, so I have energy left for the special ones. Spacing, color, type sizes — none of that needs reinventing every time.

A good system makes the obvious easy and the exceptional possible.

The foundation is tokens: named values for color, typography, spacing and radius. They're the language the whole product speaks. Change a token and everything that uses it changes — consistently, in one place. What matters is that tokens carry meaning, not just values: color-surface rather than grey-100. That keeps the system legible even when the values shift later.

Components and documentation

On top of the tokens sit components. Here I'm careful to leave enough room: sensible defaults, but doors open for the special case. A component that allows exactly one look gets worked around — and then the system quietly falls apart from the inside.

What's most often underrated is the documentation. A system nobody understands effectively doesn't exist. For me that includes:

  • The why, not just the how — the intent behind a decision
  • Examples in real context, not isolated buttons
  • Clear boundaries — when to use a component, and when deliberately not to

A design system is never finished. It lives with the product, grows, and sometimes lets go. That sense of stewardship is exactly what separates a system gathering dust from one a team can lean on. When it works, you don't notice it — you just build faster, calmer and more coherently. And that's precisely the goal.