UI/UX & Digital Experience

Design systems that stop the drift.

When several people build one interface, it drifts into several styles. A design system gives them shared decisions to build from: colors, type, components, states and usage rules.

What is a design system?

A design system is a documented set of design decisions plus the parts that carry them. It includes named values for color, type, spacing and motion, components with every state defined, common layouts, and rules for which to use when. It exists to be built from, not admired.

A schematic of a component library: named design tokens for color, radius and type, a card component built from them with its default, hover, focus and disabled variants, and an inspector that reads layout and typography from tokens rather than fixed values, with a contrast check. It is illustrative and not a client file.
01/WHAT YOU GET

What you get.

  • Named values for color, type, spacing and motion
  • Components designed in every state
  • Patterns for page shells, forms and tables
  • Usage rules for which component to use when
  • Accessibility criteria for each component
  • A process for adding and versioning parts

A good fit for

  • Product teams with several people building one interface
  • Companies whose interface has drifted into several styles
  • Businesses whose several products should look like one company
02/HOW IT WORKS

How the work runs.

  1. Inventory

    We collect every screen, control variant, color, space and type size already in use.

  2. Decide the tokens

    Color, type, spacing, radius, depth, screen sizes and motion are settled first, since everything depends on them.

  3. Build the components

    Each component is designed in every state, including disabled, loading, empty, error and access-denied.

  4. Compose the patterns

    Components are combined into the layouts the product needs, so teams assemble pages instead of redesigning them.

  5. Document

    We write usage rules, accessibility criteria, do and do-not examples, and the reason for each decision.

  6. Govern

    We agree an owner, a way to contribute and a versioning approach, so the system keeps up.

03/PROBLEMS

What we fix.

  • Problem

    Buttons and colors differ on every screen

    What we do

    We inventory what exists and keep one version of each value and component.

  • Problem

    New screens cost as much as the first

    What we do

    Teams assemble new screens from ready components and patterns instead of starting from nothing.

  • Problem

    Nobody uses the design system you have

    What we do

    We document usage rules and agree an owner, so the system keeps up with the product.

04/COMPARISON

Style guide, component library or design system?

The terms are used interchangeably but mean different things. What each one contains, and what it does not do on its own.
TermWhat it containsWhat it does not do on its own
Style guideA static document of color, type, logo use and tone.Nothing is built from it; every build decision stays open.
Design tokensNamed values: color roles, type scale, spacing, radius, motion.They hold decisions, not components or build guidance.
Component libraryBuilt, reusable parts like buttons, inputs and cards, with states.No usage rules, so two teams can build different products.
Design systemAll of the above, plus documentation, accessibility rules and governance.It does not maintain itself; it needs an owner.
05/QUESTIONS

Frequently asked questions

How long does a design system take to build?

It follows the number of components and the number of states each one carries, not the number of pages. A token set with a core control library is a short engagement. A system covering dense tables, filtering, roles, permissions and a real onboarding flow takes considerably longer, because every state has to be designed rather than assumed.

Can you build a design system from our existing interface?

Yes, and that is the more common starting point. An inventory of existing screens shows the duplication — four buttons, three blues, two radii — and the system is assembled from the versions worth keeping. Extracting a system also surfaces the inconsistencies nobody had counted, which is usually the moment the work gets approved.

Does a design system slow designers down?

It removes decisions that did not need making again, which speeds ordinary work up and makes genuinely new work more deliberate. The failure mode is a system so rigid that anything unanticipated has to be smuggled in, which is why a contribution route is part of the deliverable rather than an afterthought.

What framework do you build components in?

Whatever your product already uses, because a component library in a framework your team does not run is documentation. Our own default is React with tokens as plain CSS custom properties, which keeps the styling layer portable and adds no runtime cost to a page.

Does a design system cover print and brand assets as well?

Partly. The brand layer — the mark, color values, typography and visual language — carries across digital and print, and that work sits under branding and creative design. Component behavior, states and responsive rules are specific to interfaces and have no print equivalent, so the two systems reference each other rather than merging.

06/THE FULL DETAIL

The full detail.

Short answers are above. Open a panel below for the specifics: how we decide, what is included and the deeper questions.

Is this the right choice?

  • Build a design system when more than one person builds the interface.

    Two designers, two developers, or an agency and an in-house team. The moment consistency depends on people remembering conventions rather than reading them, a system pays for itself.

  • Build one when the product will keep growing.

    If screens will still be added in two years, the system is what makes those screens cheap. If the product is finished at launch, the case is much weaker.

  • Skip it when the site is small and static.

    A handful of pages built once by one person does not need governance, contribution rules or a component catalog. Tokens and a short set of conventions are the proportionate version.

  • Start with UI/UX design when the screens themselves are wrong.

    A system makes an interface consistent, not correct. Where the structure and the flows are the problem, design those first and extract the system from the result.

What goes into a design system?

Four layers and their documentation: tokens holding each raw decision, components with every state defined, patterns combining those components, and rules stating which to use when. Around them sit accessibility criteria, responsive behavior, content and labeling conventions, and a named owner who keeps the whole thing current.

The list below is the usual inventory rather than a fixed package, and the scope is set by what the product actually contains. A system for a marketing site and a system for an application with roles, tables and dense filters are different sizes of job, and pretending otherwise is how a system ends up half-built.

  • Typography: the scale, weights, line heights and measure, with a rule for each level.
  • Color: roles rather than swatches — surface, body, muted, border, accent, status — each with verified contrast pairings.
  • Spacing and layout: one spacing scale, the container widths, the grid and the breakpoints.
  • Controls: buttons, inputs, selects, checkboxes, radios and switches, with every state each one has.
  • Surfaces and structure: cards, dialogs, navigation, tabs and tables.
  • States: hover, focus, active, disabled, loading, empty, error and success.
  • Accessibility criteria per component: focus visibility, labeling, target size and contrast.
  • Motion: duration and easing tokens, plus the reduced-motion behavior for each effect.

What are design tokens?

Design tokens are named values that hold a design decision in one place: a color role, a type size, a spacing step, a radius, a duration. Components reference the name rather than the value, so changing the value changes every place that uses it and none of them can drift.

The important word is role. A token named for its purpose — a body text color, a border color, a raised surface — can be reassigned when the design changes. A token named for its appearance cannot, and a system full of those is a palette with extra steps.

Tokens are also what makes theming and brand alignment tractable. If a marketing site and a product both reference the same named roles, aligning them is a values change rather than a redesign.

Where do design tokens live?

In one file that the interface reads directly. On this site they are plain CSS custom properties, which no framework has to interpret and which cost nothing at runtime. Where several platforms consume the same tokens, a shared source generates the format each one needs.

Do tokens replace a style guide?

They replace the part of a style guide that gets ignored. A document stating a color is decorative; a token is the value the interface actually uses. The document still earns its place for the reasoning, the rules and the examples of misuse.

How do you stop a design system being abandoned?

By deciding who owns it, how somebody adds to it, and how the product consumes it — before it is built. Most abandoned systems were not bad systems. They were unowned ones: nothing updated them when the product moved, so building from them became riskier than copying the last screen.

Three things keep a system alive in practice. It has to be genuinely easier to use than to bypass, which is a documentation and ergonomics problem rather than a discipline problem. It has to have a route for adding the component somebody needs today, or that component gets built outside the system and never comes back. And somebody has to be accountable for it, with the time to be.

We agree those three before the first token, and hand over the process alongside the components. A system delivered without them is a snapshot, and snapshots age.

Does a small website need a design system?

Usually not, and a system sold into that situation is overhead. A handful of pages built once by one person needs a token set and a short list of conventions, not governance and a component catalog. The threshold is more than one builder, or a product that will keep being extended.

The honest version of the argument is about where the cost lands. A design system is paid for up front and returns its cost across screens built later. If there are no later screens and no second builder, the return never arrives, and the proportionate deliverable is a token file plus interface designs.

Where that is the right answer, we say so and scope the smaller job. It is the same reasoning that puts a UX audit ahead of a redesign: the cheaper intervention first, where the cheaper intervention is what the situation actually needs.

Everything included

  • Design systems
  • Design tokens
  • Component systems
  • Pattern libraries
  • System documentation and governance

How a design system scales.

A design system is layered, and each layer is assembled from the one below it. That is what makes the work compound: a decision taken once at the bottom is inherited by everything above it, rather than being re-taken on every screen.

  • Tokens

    The raw decisions: color roles, type scale, spacing, radius, elevation, breakpoints, duration and easing. Each one named once.

  • Components

    Buttons, inputs, selects, cards, tables, navigation and dialogs, each specified in every state it can be in.

  • Patterns

    Components arranged into the combinations the product needs: a form, a filter bar, a record view, an empty state.

  • Pages

    Whole views assembled from patterns, which is where layout and responsive behavior are resolved rather than invented.

  • Product

    The complete interface, consistent because every screen in it inherits the same decisions from the same place.

The layers are also the review order. A disagreement about a page is frequently a disagreement about a token, and arguing it at the page level means having the same argument again on the next page.

Why it matters

  • The next screen is cheaper than the last

    Assembly replaces invention. The cost curve of adding to the product bends downwards instead of upwards, which is the entire commercial case for a system.

  • One change, everywhere

    A decision held as a token is changed in one place. Without tokens, a brand color change is a search through a codebase and a set of screens, and some of them get missed.

  • Consistency survives new people

    A developer or designer joining in month eighteen has something to build from. Consistency stops depending on who remembers the conventions.

  • Accessibility is decided once

    Focus treatment, contrast and target sizes live in the component rather than in each use of it, so the accessible version is also the default version.

Where it applies

  • A product that grew past its own conventions

    Several years of features, several designers, and an interface that has stopped agreeing with itself. The work is to extract the system that is implicitly there and then fix what it reveals.

  • A long build starting now

    Where a product will be built over months and extended for years, tokens and components come first so the later screens are assembled rather than negotiated.

  • Several products, one company

    A marketing site, an application and a customer portal built by different people at different times. A shared token layer is what makes them read as one organization.

Technology and approach

  • Tokens as plain CSS custom properties, so they work in any framework and add no runtime cost to the page.
  • Components specified by behavior and state, not only by appearance, because appearance is the part that survives a handover unaided.
  • Semantic markup inside every component: real buttons, real links, real labels, real tables, real headings.
  • Responsive behavior defined per component, so a page is not a special case at each breakpoint.
  • Accessibility criteria attached to the component: focus visibility, contrast pairing, target size and labeling.
  • Motion held as duration and easing tokens rather than chosen per animation, and always respecting a reduced-motion preference.
  • This site is built the way this page describes: design tokens as CSS custom properties in one file, and a fixed inventory of reusable blocks that every page is assembled from.
07/RELATED

Related services

Talk to us about Design Systems.

Tell us what you need and when you need it. We reply with a clear scope and the next steps.