Design

Linear Design

Project management. Ultra-minimal, precise, purple accent.

Linear

hero / Transactional dashboard + data rows

Linear Design System

Linear's marketing canvas is the deepest dark surface in this collection — colors.canvas is #010102, essentially pure black with a faint blue tint.

data rowsselected state
BTC$104,821+2.4%Buy
ETH$4,012-0.8%Sell
USD1.000ActiveSwap

Palette / color swatches / roles

Token color roles

Primary
#5e6ad2
colors.primary
Canvas
#010102
colors.canvas
Ink
#f7f8f8
colors.ink
Hairline
#23252a
colors.hairline
On Primary
#ffffff
colors.on-primary
Primary Hover
#828fff
colors.primary-hover
Primary Focus
#5e69d1
colors.primary-focus
Ink Muted
#d0d6e0
colors.ink-muted

Typography / font scale / display type

Type hierarchy

typography.display-lg

56px / 600 / 1.1 / tracking -1.8px

Linear interface rhythm

typography.display-md

40px / 600 / 1.15 / tracking -1.0px

Linear interface rhythm

typography.display-xl

80px / 600 / 1.05 / tracking -3.0px

Linear interface rhythm

typography.card-title

22px / 500 / 1.25 / tracking -0.4px

Linear interface rhythm

typography.body

16px / 400 / 1.5 / tracking -0.05px

Linear interface rhythm

typography.body-lg

18px / 400 / 1.5 / tracking -0.1px

Linear interface rhythm

typography.display-xltypography.display-lgtypography.display-mdtypography.headlinetypography.card-titletypography.subheadtypography.body-lgtypography.body

Buttons, controls, cards, components

Interface components

component.top-nav

top-nav

backgroundColor {colors.canvas}; textColor {colors.ink}; typography {typography.body-sm}; rounded {rounded.xs}

defaultactive

component.button-inverse

button-inverse

backgroundColor {colors.inverse-canvas}; textColor {colors.inverse-ink}; typography {typography.button}; rounded {rounded.md}

defaultactive

component.button-primary

button-primary

backgroundColor {colors.primary}; textColor {colors.on-primary}; typography {typography.button}; rounded {rounded.md}

defaultactive

component.button-primary-hover

button-primary-hover

backgroundColor {colors.primary-hover}; textColor {colors.on-primary}; typography {typography.button}; rounded {rounded.md}

defaultactive

component.button-primary-pressed

button-primary-pressed

backgroundColor {colors.primary-focus}; textColor {colors.on-primary}; typography {typography.button}; rounded {rounded.md}

defaultactive

component.button-secondary

button-secondary

backgroundColor {colors.surface-1}; textColor {colors.ink}; typography {typography.button}; rounded {rounded.md}

defaultactive

Forms and inputs / search / focus

Spacing / rhythm / padding

Spacing scale

spacing.section96px
spacing.lg24px
spacing.md16px
spacing.sm12px
spacing.xl32px
spacing.xs8px
spacing.xxl48px
spacing.xxs4px

Radius / shape / corner rules

Shape system

rounded.xs4px
rounded.sm6px
rounded.md8px
rounded.lg12px
rounded.xl16px
rounded.xxl24px

Elevation / depth / shadow

Layer strategy

Depth is shown with documented surface contrast, border hairlines, shadow restraint, overlays, and component layering.

Signature components

Transactional dashboard + data rows

This specimen uses source-specific chrome from the Design.md rather than a generic card layout.

Responsive / breakpoint / mobile / tablet / desktop

Breakpoint behavior

Mobile stacks sections and cards; tablet moves to two-up groups; desktop restores full grids, wider media, and denser component examples.