Contact

The case for fewer components

UI

Design systems usually start small and sensible. Then every new project adds a component that is almost, but not quite, like an existing one. A year later there are four card styles, three button sets and nobody is sure which to use.

A smaller system is often a stronger one.

Count what you have#

Start with an audit. Screenshot every button, card, input and modal in the product and group them by purpose. Most teams find several variations that exist only because someone did not know the original was there.

Questions for each component#

  • What job does it do that no other component does?
  • Is the difference from its neighbour intentional and documented?
  • How many places use it?
  • Would a variant of an existing component do the same job?

Prefer variants to new components#

A button with a clear set of variants, such as primary, secondary and quiet, in two or three sizes, covers almost every case. Defining those variants explicitly is better than adding a new button whenever a design needs something slightly different.

Design the content, not just the container#

Components fail when real content arrives: long titles, missing images, three lines of text where one was expected. Design each component with its edge cases, and document how it behaves when content is too long or absent.

Every component you add is one more thing someone has to choose between.

Keep design and code in step#

A component that exists in Figma but not in code, or the other way round, causes drift. Name them the same, review them together, and retire them together.

Make removing easy#

Celebrate deleting a component as much as adding one. A system that shrinks over time is usually one that is being used well.

Designing dark mode is designing a second palette

UI

Inverting colours does not make a dark theme. Good dark mode is its own palette, with its own contrast, depth and accent decisions.

Ecommerce

Movement-first commerce: shopping by activity, not SKU

E-commerce

Most stores are organised the way the warehouse is. Organising around what people actually do changes how they browse, compare and choose.

thumb

Designing for the thumb: mobile navigation that holds up

UX

Most phone use is one-handed. Navigation that respects the reach of a thumb feels effortless; navigation that ignores it feels like work.

thumb

Choosing a typeface for an editorial brand

Typography

A typeface sets the tone before a single word is read. Here is how I narrow the choice for brands that want to feel considered rather than loud.