Skip to main content

Design system guide

What is a design system — and why does every tech team use one?

A plain-English guide for PMs, BAs, and developers who work alongside design teams and want to understand what a design system is, what it contains, and why it matters.

What is a design system?

Think of it as LEGO bricks for digital products.

A design system is a collection of reusable design components, code components, and guidelines that teams use to build products consistently. The LEGO analogy holds: predefined pieces that snap together correctly every time, regardless of who is building.

Without one, each designer makes slightly different buttons, each engineer implements them differently, and the product slowly drifts into inconsistency. A design system stops that drift before it starts.

What a design system includes

Most mature design systems contain four layers. Together they form a complete shared language between design and engineering.

  1. 1

    Design tokens

    The foundational values — colors, typography, spacing, border radius, shadows. Stored as variables and applied across everything. Change a color token in one place and it updates every component that uses it.

  2. 2

    Component library

    Reusable UI components — buttons, inputs, modals, navigation, cards — with variants for each state. A button component covers its default, hover, focus, disabled, and loading states so designers never have to spec them repeatedly.

  3. 3

    Documentation

    Usage guidelines, accessibility notes, and do / do-not examples for each component. Good documentation means any designer or engineer can use a component correctly without asking the person who built it.

  4. 4

    Code library

    The components implemented in React, Vue, or native code — engineers import them directly instead of rebuilding from scratch. The code library is the design system expressed in the language of production software.

Famous design systems you can explore

These are publicly available. Studying them is one of the fastest ways to understand how mature product teams think about component design and documentation.

  1. Material Design (Google)material.io
  2. Human Interface Guidelines (Apple)developer.apple.com/design
  3. Atlassian Design Systematlassian.design
  4. Shopify Polarispolaris.shopify.com
  5. Carbon (IBM)carbondesignsystem.com

Why design systems exist

The before-and-after is stark.

Without a design system

  • Every designer makes slightly different buttons.
  • Every engineer implements them differently.
  • The product looks inconsistent across pages.
  • Redesigns touch hundreds of components individually.

With a design system

  • Change a button style once — it updates everywhere.
  • Onboarding new designers and engineers is faster.
  • Accessibility is built into components, not retrofitted.
  • The product stays consistent as the team grows.

What non-designers need to know

You do not need to build a design system to benefit from one. Here is how each role uses it day-to-day.

PMs

Reference the design system when writing specs. 'Use the primary button variant' is clearer and more actionable than describing how a button should look. It removes ambiguity and gives engineers an exact reference.

BAs

When documenting requirements, link to the relevant component so developers know exactly what to build. This turns a vague requirement into a precise implementation instruction.

Engineers

Design systems dramatically speed up implementation. Use the library instead of building from scratch. Every hour you spend on a custom button is an hour not spent on product logic — and the custom button is usually less accessible anyway.

Tools teams use to build and maintain design systems

Most teams combine all three. Figma handles the design side, Storybook handles the code side, and ZeroHeight stitches them together into a single source of truth.

  1. Figma

    The standard tool for the design component library. Design tokens, components, and variants all live here. Most teams share a Figma file as the design side of their system.

  2. Storybook

    An open-source tool for documenting and showcasing code components in isolation. Engineers can browse every component, see its states, and copy usage examples without opening the codebase.

  3. ZeroHeight

    A documentation platform that bridges design and code. Teams embed Figma components and Storybook previews side-by-side so the design intent and code implementation are always in sync.

Put this knowledge to work

Build UX design skills in the UX Designer track

Design systems are one piece of the UX toolkit. The UX Designer learning path covers the full discipline: user research, wireframing, prototyping, usability testing, and Figma — all the skills that make design systems valuable.

Explore the UX Designer track