Design

OpenCode Design

AI coding platform. Developer-centric dark theme.

OpenCode

hero / Transactional dashboard + data rows

OpenCode Design System

OpenCode's marketing site is rendered entirely in Berkeley Mono — every word on the page, from the 38px hero headline down to the 14px footer fine print, sits in the same monospaced face.

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
#201d1d
colors.primary
Accent
#007aff
colors.accent
Canvas
#fdfcfc
colors.canvas
Surface Soft
#f8f7f7
colors.surface-soft
Surface Card
#f1eeee
colors.surface-card
Body
#424245
colors.body
Success
#30d158
colors.success
Warning
#ff9f0a
colors.warning

Typography / font scale / display type

Type hierarchy

typography.display-xl

38px / 700 / 1.5 / tracking 0

OpenCode interface rhythm

typography.heading-md

16px / 700 / 1.5 / tracking 0

OpenCode interface rhythm

typography.body-md

16px / 400 / 1.5 / tracking 0

OpenCode interface rhythm

typography.body-strong

16px / 500 / 1.5 / tracking 0

OpenCode interface rhythm

typography.body-tight

16px / 500 / 1 / tracking 0

OpenCode interface rhythm

typography.button-md

16px / 500 / 2 / tracking 0

OpenCode interface rhythm

typography.display-xltypography.heading-mdtypography.body-mdtypography.body-strongtypography.body-tighttypography.link-mdtypography.button-mdtypography.caption-md

Buttons, controls, cards, components

Interface components

component.primary-nav

primary-nav

backgroundColor {colors.canvas}; textColor {colors.ink}; typography {typography.body-strong}; rounded {rounded.none}

defaultactive

component.button-disabled

button-disabled

backgroundColor {colors.surface-card}; textColor {colors.ash}; rounded {rounded.sm}

defaultactive

component.button-primary

button-primary

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

defaultactive

component.button-primary-active

button-primary-active

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

defaultactive

component.button-secondary

button-secondary

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

defaultactive

component.button-tab

button-tab

backgroundColor transparent; textColor {colors.mute}; typography {typography.button-md}; rounded {rounded.none}

defaultactive

Forms and inputs / search / focus

Spacing / rhythm / padding

Spacing scale

spacing.section96px
spacing.lg16px
spacing.md12px
spacing.sm8px
spacing.xl24px
spacing.xs4px
spacing.xxl32px
spacing.xxs1px

Radius / shape / corner rules

Shape system

rounded.none0px
rounded.sm4px
rounded.full9999px

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.