Kreate. Agency
← DispatchEngineering3 min

A component library must remove decisions.

The value of a component library is not the number of components inside it. It is the number of repeated decisions it prevents across design, development and QA.

Mario Kruger
Mario Kruger
On a worktable under daylight, identical switches, fasteners and cable clips sit in divided trays beside a single assembled control panel.

The temptation is to build a component library as a complete set: every button, every card, every possible variation. That is how teams create a lot of files and little consistency.

Start where decisions repeat

Look at the work already shipping. Which patterns get redesigned every sprint? Which fields behave differently from page to page? Which states repeatedly arrive late in QA? Those are the components worth standardising first.

Define the states, not just the happy path

A button is not finished because it has a default colour. It needs disabled, loading, focus, error and responsive behaviour. A form field needs validation, help text and an accessible label. The boring states are the ones that keep a library from collapsing on contact with the real product.

Keep the library close to delivery

The design component, coded component and documentation should describe the same thing. When they do not, people stop trusting the library and start copying whatever worked last time.

A component library is a record of decisions the team should not have to make twice.

Add only after use

Ship one useful pattern, use it in the product and learn what it is missing. That loop produces a smaller library with more authority — which is the point.

Keep reading

All dispatches →