Design

Expo Design

React Native platform. Dark theme, tight letter-spacing, code-centric.

Expo

hero / Marketplace search + product cards

Expo Design System

Expo's marketing site reads like a quietly-confident React-Native developer platform.

WhereAny weekGuests

Featured card

Rating · price · location

Marketplace tile

Hover / saved state

Responsive card

Mobile stack

Palette / color swatches / roles

Token color roles

Primary
#000000
colors.primary
Canvas
#ffffff
colors.canvas
Ink
#171717
colors.ink
Body
#60646c
colors.body
Muted
#999999
colors.muted
Hairline
#f0f0f3
colors.hairline
Primary Active
#1a1a1a
colors.primary-active
Text Link
#0d74ce
colors.text-link

Typography / font scale / display type

Type hierarchy

typography.display-lg

36px / 600 / 1.15 / tracking -1.08px

Expo interface rhythm

typography.display-md

28px / 600 / 1.2 / tracking -0.84px

Expo interface rhythm

typography.display-mega

64px / 600 / 1.05 / tracking -1.92px

Expo interface rhythm

typography.display-sm

22px / 600 / 1.25 / tracking -0.5px

Expo interface rhythm

typography.display-xl

48px / 600 / 1.1 / tracking -1.44px

Expo interface rhythm

typography.title-md

18px / 600 / 1.4 / tracking 0

Expo interface rhythm

typography.display-megatypography.display-xltypography.display-lgtypography.display-mdtypography.display-smtypography.title-mdtypography.title-smtypography.body-md

Buttons, controls, cards, components

Interface components

component.top-nav

top-nav

backgroundColor {colors.canvas}; textColor {colors.ink}; typography {typography.nav-link}; height 64px

defaultactive

component.button-primary

button-primary

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

defaultactive

component.button-primary-active

button-primary-active

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

defaultactive

component.button-secondary

button-secondary

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

defaultactive

component.button-tertiary-text

button-tertiary-text

backgroundColor transparent; textColor {colors.text-link}; typography {typography.button}

defaultactive

component.device-mockup-card

device-mockup-card

backgroundColor {colors.surface-card}; textColor {colors.ink}; rounded {rounded.xl}; padding 0

defaultactive

Forms and inputs / search / focus

Spacing / rhythm / padding

Spacing scale

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

Radius / shape / corner rules

Shape system

rounded.none0px
rounded.xs4px
rounded.sm6px
rounded.md8px
rounded.lg12px
rounded.xl16px

Elevation / depth / shadow

Layer strategy

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

Signature components

Marketplace search + product cards

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.