Process

One mold, every casting: how we stopped redesigning the button

For a year, every page we shipped redesigned the same twelve parts. The fix was not a bigger design system — it was a smaller one, with a checklist and the nerve to say no.

MS
Mara SatoNov 2, 2026 · 6 min read
FIGURE — THE MOLD, PHOTOGRAPHED FROM ABOVE

The master mold for the current catalog. Every part on the site began as a casting from it.

Every team has the drawer: forty-one buttons, each built for one page, each slightly proud of its radius. Ours lived in production. Auditing it took a week and produced the least surprising finding in software — the differences were not decisions. They were weather.

The audit nobody wanted

We listed every part on every page and marked the differences worth keeping. Of 214 variations, 11 were deliberate. The rest were the same idea re-typed by different people on different Tuesdays, and each one cost maintenance forever.

A design system is not a library of answers. It is a short list of questions you have agreed to stop re-asking.

The mold came out of that list: one token file, a page template, and an automated check that fails a part the way a foreman rejects a bad casting — specifically, and before it ships.

What the check actually checks

Files first, then tokens, then class coverage: every class used in a preview must be defined by the part itself or a declared dependency. The rule sounds clerical until the first time it catches a part quietly depending on another part’s stylesheet — which was week one.

python3 check.py
136/136 components pass the mold

Three rules did most of the work:

  • Colors come from tokens, never from hex — themes stay possible.
  • Every class a part shows is a class the part defines.
  • A release needs three clean passes in a row, not one lucky one.

What we would not do again

We would not start with the logo, the marketing page, or 2,000 icons. We would start with the button, the input, and the argument about tokens — in that order, because the argument is the system and the rest is inventory.

MS
Written by Mara Sato

Design lead at Acme Studio. Owns the tokens, the mold, and strong opinions about border radii. Previously: three design systems that did not survive contact with a roadmap.

Built with KATA UI — this page is a template. Get it →