Skip to content

Dub Design System

Dub’s design system uses a #2563eb blue primary accent, Inter typeface across headings and body, and a white canvas background. It ships 22 ready‑to‑use components and a full token set for rapid UI development.

Add shadcn.io to your AI agent. · Pro It installs blocks, icons and templates in your design system from a prompt, with Pro.

Set up MCP
Primary
#2563eb
Typeface
Inter
Shape
Sharp
Base radius
4px
Colors
17
Type tokens
10
Components
15
Spacing values
9

About

About Dub DESIGN.md

Curated by Dov Azencot · Updated May 14, 2026 · Source dub.co (opens in a new tab)

The Dub homepage opens on a pure white canvas (#ffffff) framed by dark #171717 body copy and a #2563eb blue link accent that threads through navigation, buttons, and focus rings. The hero heading uses a large satoshi typeface at 48px, while the body text settles into Inter 14px‑20px line‑height, establishing a clear hierarchy without decorative flourishes. A distinctive 1‑pixel #e5e5e5 hairline border runs around cards, tables, and input fields, acting as the system’s sole elevation mechanism and reinforcing visual consistency across the interface.

Inside this DESIGN.md file live a total of 60 raw color samples collapsed into 50 clustered tokens, organized into primary, neutral, and status groups. The token set includes 17 named colors, 15 typography roles, 7 rounded radii, and 9 spacing steps. The component library covers navigation, forms, data display, and feedback patterns, totaling 22 distinct components. All values follow the Google Labs design‑system spec, exposing CSS variables and Tailwind‑compatible tokens for seamless integration.

Developers can import this JSON into Claude, Cursor, or Copilot to generate component scaffolding, or reference the tokens directly in Tailwind config or CSS‑var declarations such as var(--colors-primary) and var(--font-inter). Because the system is grounded in real‑world usage data, it offers a pragmatic case study of how a data‑driven token strategy can reduce visual noise while preserving brand identity.

What makes it distinct

4

  1. Primary accent#2563eb blue appears on interactive links, focus rings, and button backgrounds, providing a consistent visual hook across the product.
  2. Hairline elevation#e5e5e5 1‑pixel borders replace heavy shadows, creating a subtle depth cue that scales across cards, tables, and input fields.
  3. Neutral palette#171717 ink and #404040 body text deliver strong contrast on the #ffffff canvas while preserving a low‑key aesthetic.
  4. Status colors#dcfce7 success, #fb923c warning, and #d32f2f error tokens give immediate feedback without relying on additional graphics.

dub.co

Live at dub.co

A snapshot of the brand in production. Scroll the frame to see the whole page.

Dub's website at dub.co

Colors

17 colors

Dub's system runs on #2563eb as its primary voltage, used in 1 of 15 components. Type is set in Inter across 10 tokens from 10px to 14px, weights 400–600. Shape language is sharp — components average 0px corner radius, favoring crisp rectangles.

Brand & Accent

Sparing, CTA-only voltage · 2

Surface

Page and card backgrounds · 3

Text

Headlines, body, captions · 4

Borders & Hairlines

Dividers, outlines, rules · 1

Semantic

Status, errors, success, links · 4

Other

Specialty colors · 3

Typography

10 type tokens

Set in Inter across 10 tokens, from 10px to 14px, weights 400–600. Shown in its own stack: where the font isn't installed, the fallback the file names stands in.

  • heading-lg14px · weight 500 · lh 20The quick brown fox jumps over the lazy dog
  • heading-md12px · weight 500 · lh 16The quick brown fox jumps over the lazy dog
  • body-lg14px · weight 400 · lh 20The quick brown fox jumps over the lazy dog
  • body-md12px · weight 400 · lh 16The quick brown fox jumps over the lazy dog
  • body-sm10px · weight 400 · lh 10The quick brown fox jumps over the lazy dog
  • caption10px · weight 600 · lh 15The quick brown fox jumps over the lazy dog
  • code14px · weight 400 · lh 20The quick brown fox jumps over the lazy dog
  • label11px · weight 500 · lh 16.5The quick brown fox jumps over the lazy dog
  • overline10px · weight 500 · lh 15The quick brown fox jumps over the lazy dog
  • button14px · weight 500 · lh 20The quick brown fox jumps over the lazy dog

Layout

Radii and spacing

6 corner radii and 9 spacing values. Shape language: sharp.

Radii

  • none0px
  • sm2px
  • md4px
  • lg6px
  • xl8px
  • full9999px

Spacing

  • xxs1px
  • xs2px
  • sm4px
  • md6px
  • base8px
  • lg10px
  • xl16px
  • 2xl16px
  • 3xl16px

Components

15 components

Each rendered from its tokens (color, type, radius, padding) on Dub's own canvas.

  • Button Primary
    button-primaryButton Primary
  • Button Secondary
    button-secondaryButton Secondary
  • Input Text
    input-textInput Text
  • Card Surface
    card-surfaceCard Surface
  • Badge Success
    badge-successBadge Success
  • Badge Warning
    badge-warningBadge Warning
  • Badge Error
    badge-errorBadge Error
  • Nav Link
    nav-linkNav Link
  • Footer Link
    footer-linkFooter Link
  • Modal Overlay
    modal-overlayModal Overlay
  • Tooltip
    tooltipTooltip
  • Avatar
    avatarAvatar
  • Table Header
    table-headerTable Header
  • Pagination Item
    pagination-itemPagination Item
  • Alert Info
    alert-infoAlert Info

In use

The system, in use

Dub's tokens on the kind of product it builds.

Build something people actually use.

A short paragraph of marketing copy that previews how the brand's display tier and body tier read together. Two sentences is usually enough.

Get startedLearn more
Marketing heroHeadline, sub-copy, primary CTA — the universal homepage opener.

FAQ

Dub design system FAQ

Common questions about Dub's tokens, components, and how to use this DESIGN.md in your project.

Read next

Specs, directories, and component libraries that pair with this design system.

Use it

Use Dub in your project

One machine-readable file. Drop it into Claude, Cursor, or any AI tool that reads DESIGN.md.

Download DESIGN.md
  1. Download the DESIGN.md

    One machine-readable file: every color, type, radius, spacing, and component token of Dub.

  2. Feed it to your AI tool

    Drop it into Claude, Cursor, or GitHub Copilot. The agent writes React components and Tailwind classes that match Dub's visual language.

  3. Reference the tokens directly

    Or paste the values into your Tailwind config, CSS variables, or component library: every color, size and radius is a quoted, ready-to-copy value.

Read the full DESIGN.md: overview, rationale, do’s and don’ts

Overview

Hairline-as-elevation.

Dub’s visual language rests on a disciplined token hierarchy that treats the 1‑pixel #e5e5e5 border as the sole elevation primitive. Where most SaaS dashboards rely on heavy drop shadows to convey depth, Dub substitutes that weight with a crisp hairline that scales across cards, tables, and input fields, preserving a lightweight aesthetic while still signaling hierarchy. The system also enforces a strict separation between primary accent (#2563eb), neutral ink (#171717), and background (#ffffff), ensuring that each layer communicates its purpose without visual clutter. Typography follows a modular scale anchored in Inter, with size‑weight pairs that map directly to component needs, while the limited radius set (2‑8px) creates a consistent curvature across UI elements. Spacing tokens are linear, mirroring the most common margins observed on the live site, and color tokens are grouped into primary, neutral, and status families for rapid composition. This disciplined approach yields a UI that feels cohesive, performant, and instantly recognizable.

Key Characteristics:

  • Hairline border (#e5e5e5) replaces shadow for elevation.
  • Primary accent #2563eb applied to links, focus rings, and CTA backgrounds.
  • Ink #171717 provides maximum contrast on a white canvas.
  • Status palette includes success #dcfce7, warning #fb923c, error #d32f2f.
  • Typography scale uses Inter for UI text and GeistMono for code.
  • Radii range from 2px to 8px, with full rounding for avatars.
  • Spacing steps from 1px to 16px follow a linear progression.
  • Component library covers navigation, forms, data display, and feedback patterns.
  • Tokens are exposed as CSS variables and Tailwind config entries for developer ergonomics.
  • Design decisions are data‑driven, reflecting actual usage frequencies on dub.co.

Known Gaps

  • The token set lacks explicit dark‑mode variants, requiring developers to duplicate colors for high‑contrast themes.
  • No dedicated typography token for large display headings (48px+), forcing manual overrides for hero sections.
  • The spacing scale stops at 16px, limiting designers who need larger gutters for complex dashboards.
  • Border radius options omit a 10px step, which appears in a few custom components on the live site.
  • Status colors are defined only for success, warning, and error; an informational blue token exists but is not consistently applied across alerts.
  • The current component list does not include a toast notification pattern, a common UI element for real‑time feedback.
  • Accessibility contrast checks for the primary accent on colored backgrounds are not documented, leaving potential WCAG compliance gaps.

Design & Creative Tools

More systems like this

More DESIGN.md files in Design & Creative Tools.

Pricing

Build it with Pro

The DESIGN.md files are free. Pro adds 6,000+ blocks, premium templates and the MCP server, so your AI editor builds in your system for you.

4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.

Billed once a year in USD. Cancel anytime.

Individual

For personal projects & open source

$32instead of $49/mo

$389 billed yearly

  • How many people can use the license.Seats: 1 seat
  • Client work, SaaS products and anything you charge for.Commercial use: Personal & open source only
  • Production-ready React sections: hero, pricing, features, dashboards and more.Pro blocks: 6,000+ blocks
  • Complete multi-page sites you can ship as they are.Templates: All 14 templates
  • React icons from every major library, installable with one command.React icons: 294k+ icons
  • Presets that restyle every block, in light and dark.Themes: All 59 themes
  • Lets your AI editor search, preview and install blocks for you.MCP server: Basic usage
  • Priority requests are answered first.Support: Standard

Team

Most popular

For freelancers, agencies & startups

$66instead of $99/mo

$789 billed yearly · ≈ $13/dev/mo

Everything in Individual, plus

  • How many people can use the license.Seats: Up to 5 seats
  • Client work, SaaS products and anything you charge for.Commercial use: Included
  • Lets your AI editor search, preview and install blocks for you.MCP server: High usage
  • Priority requests are answered first.Support: Priority

Organization

For companies with larger teams

$132instead of $199/mo

$1,589 billed yearly

Everything in Team, plus

  • How many people can use the license.Seats: Unlimited seats
  • Lets your AI editor search, preview and install blocks for you.MCP server: Unlimited usage
  • Secure checkout via Stripe
  • Code lives in your repo
  • Keep what you've shipped if you cancel
  • License terms

Your system, built for you

Every block, template and icon, installed by your AI agent in your design system. The DESIGN.md files stay free.

Get Pro