getdesign.mdgetdesign/expo

Expo

Luminous monochromatic developer platform — cool off-white canvas, pill-shaped geometry, and full-range Inter with extreme negative tracking on display.

install

npx designkit-cli add getdesign/expo
source ↗
previewtemplates · Expo

Typography

Every text element the kit ships — headings through code

elements

Headings

The quick brown fox

Section heading

Subsection heading

Minor heading

Overline heading

Body text

Lead paragraph.Body text sits at the backbone of any interface — if it reads well, everything else has a chance. If it doesn't, nothing else matters.

Standard paragraph at the body size. Type hierarchies work best when the jump from body to subheading is clear but not disruptive — around 1.25-1.5× works across most contexts. Inline elements like a link, inline code, emphasis, strong, and highlighted text should all feel native to the kit.

Small / caption text — used for metadata, timestamps, descriptions under labels. Usually 14px or slightly smaller.

Lists

Unordered

  • Token-driven styling
  • Agent-readable format
  • Composable kits
    • Colors
    • Typography
    • Component stylings
  • Portable between projects

Ordered

  1. Describe the kit in prose
  2. Extract colors and typography
  3. Apply to a sample UI
  4. Iterate on token values

Blockquote

“Good design is as little design as possible. Less, but better — because it concentrates on the essential aspects, and the products are not burdened with non-essentials.”
— Dieter Rams

Code

// install a kit
$ npx designkit-cli add airbnb

// apply it to your project
import { applyKit } from "@designkit/theme"
applyKit("airbnb")

Rule


Buttons

Primary, secondary, outline, ghost — every state the kit ships

elements

Default

Sizes

With icon

Form fields

Every input control the kit ships — text, select, checkboxes, radios, switches, file

elements

Text inputs

Textarea

Select

Checkboxes

Radio group

Billing cadence

Toggle switch

File input

Feedback

Alerts, badges, progress, tooltips, avatars — the signal surface of every UI

elements

Alerts

!

Scheduled maintenance

We'll be rolling out a new version on Friday at 22:00 UTC. Expect a short read-only window.

!

Kit published

Your DESIGN.md is live. Anyone can now install it with `npx designkit-cli add you/my-kit`.

!

Deprecated API

You're calling /v1/kits which will be removed in 30 days. Migrate to /v2/kits.

!

Build failed

Two component tokens reference an undefined color. Run `designkit lint` to see them.

Badges & tags

OfficialCommunityv2.0BetaDeprecatedOutlineOutline alt

Avatars

JD

Jeremy Dupont

Author

ALMTKPSJ+6

Progress

Upload32%
Build78%
Complete100%

Spinner

Loading…

Tooltip (static)

Tooltip text

Keyboard shortcut

Press K to open the command palette, or Esc to dismiss.

Data display

Table, definition list, empty state — how the kit shows structured data

app

Table

KitAuthorInstallsUpdatedStatus
airbnbgetdesign12.4K2d agoActive
claudegetdesign8.1K5d agoActive
stripegetdesign7.9K1w agoActive
linear.appgetdesign6.2K2w agoBeta
heritagedk2.1K1mo agoDraft

Definition list

Name
Airbnb
Author
getdesign · Claude
Format
DESIGN.md (Google Stitch spec)
Primary font
Nunito (substitute for Airbnb Cereal VF)
Installs
12,408
License
MIT

Empty state

No kits yet

You haven't published any kits on this account. Drop a DESIGN.md in a public repo to get started.

Breadcrumbs

Tabs

Sign in

Centered auth card — the most scrutinised surface in any app

app

Welcome back

Sign in with your work email to continue.

or

New here? Create an account

Dashboard KPIs

Four-card stat row — the staple of every internal dashboard

app

Overview

Performance for the last 30 days

Active users

12,408

+4.2% vs last period

MRR

$28.9K

+12.1% vs last period

Churn

1.8%

-0.3% vs last period

NPS

72

+5 vs last period

[chart placeholder]

Chat thread

Agent + user turn-based chat — bubbles, avatar, timestamp

app
A

Design Agent

online · responds in seconds

Hey — what's the goal of today's session?
I want to ship a pricing page that matches our brand.
Got it. Sharing three variants in a sec — each in your brand tokens so it'll feel native. Which fits better: conversion-first, feature-first, or transparency-first?
Let's try conversion-first.

Hero

Landing-page headline + subtitle + primary CTA

marketing
New · v2.0

Designed for humans. Built for agents.

Ship a brand-aligned product in hours. Coding agents write UI that matches your design system — no brief, no handoff.

Pricing

Three-tier comparison grid with a highlighted middle tier

marketing

Simple pricing

Pay for what you use. Change plans any time.

Hobby

$0forever
  • 1 project
  • Community support
  • Public kits only

Pro

Popular
$19per month
  • Unlimited projects
  • Private kits
  • Priority support
  • AI kit generator

Team

$49per seat / mo
  • Everything in Pro
  • Shared workspace
  • SSO + audit logs
  • Dedicated support

source

---
name: Expo
description:
  Luminous monochromatic developer platform — cool off-white canvas, pill-shaped
  geometry, and full-range Inter with extreme negative tracking on display.
originalFonts:
  primary: "Inter"
  mono: "JetBrains Mono"
  fallbacks:
    - "-apple-system"
    - "system-ui"
colors:
  background: "#f0f0f3"
  surface: "#ffffff"
  surface-raised: "#1a1a1a"
  ink: "#1c2024"
  ink-muted: "#60646c"
  accent: "#000000"
  accent-alt: "#0d74ce"
  border: "#e0e1e6"
  link: "#0d74ce"
  warning: "#ab6400"
  danger: "#eb8e90"
  expo-black: "#000000"
  near-black: "#1c2024"
  link-cobalt: "#0d74ce"
  legal-blue: "#476cff"
  widget-sky: "#47c2ff"
  preview-purple: "#8145b5"
  cloud-gray: "#f0f0f3"
  pure-white: "#ffffff"
  widget-dark: "#1a1a1a"
  banner-dark: "#171717"
  slate-gray: "#60646c"
  mid-slate: "#555860"
  silver: "#b0b4ba"
  pewter: "#999999"
  light-silver: "#cccccc"
  dark-slate: "#363a3f"
  charcoal: "#333333"
  warning-amber: "#ab6400"
  destructive-rose: "#eb8e90"
  border-lavender: "#e0e1e6"
  input-border: "#d9d9e0"
  dark-focus-ring: "#2547d0"
typography:
  h1:
    family: "Inter"
    size: "4rem"
    weight: 700
    lineHeight: 1.1
  h2:
    family: "Inter"
    size: "3rem"
    weight: 600
    lineHeight: 1.1
  h3:
    family: "Inter"
    size: "1.25rem"
    weight: 600
    lineHeight: 1.2
  body:
    family: "Inter"
    size: "1rem"
    weight: 400
    lineHeight: 1.4
  button:
    family: "Inter"
    size: "1rem"
    weight: 500
    lineHeight: 1.25
  caption:
    family: "Inter"
    size: "0.875rem"
    weight: 400
    lineHeight: 1.4
  code:
    family: "JetBrains Mono"
    size: "1rem"
    weight: 400
    lineHeight: 1.4
spacing:
  xs: "0.25rem"
  sm: "0.5rem"
  md: "1rem"
  lg: "2rem"
  xl: "6rem"
rounded:
  sm: "4px"
  md: "8px"
  lg: "24px"
  xl: "9999px"
shadows:
  sm: "rgba(0,0,0,0.08) 0px 3px 6px, rgba(0,0,0,0.07) 0px 2px 4px"
  md: "rgba(0,0,0,0.1) 0px 10px 20px, rgba(0,0,0,0.05) 0px 3px 6px"
  lg: "rgba(0,0,0,0.15) 0px 20px 40px"
components:
  button-primary:
    background: "{colors.accent}"
    color: "#ffffff"
    border: "none"
    radius: "{rounded.xl}"
    padding: "0.625rem 1.25rem"
  button-secondary:
    background: "#ffffff"
    color: "{colors.ink}"
    border: "1px solid {colors.input-border}"
    radius: "6px"
    padding: "0 12px"
  card:
    background: "{colors.surface}"
    border: "1px solid {colors.border}"
    radius: "{rounded.md}"
    padding: "1.5rem"
  input:
    background: "#ffffff"
    color: "{colors.ink}"
    border: "1px solid {colors.input-border}"
    radius: "6px"
    padding: "0 12px"
---

<!-- source: VoltAgent/awesome-design-md @ 80bbbc2 (MIT) — see ATTRIBUTION.md -->

# Design System Inspiration of Expo

## 1. Visual Theme & Atmosphere

Expo's interface is a luminous, confidence-radiating developer platform built on
the premise that tools for building apps should feel as polished as the apps
themselves. The entire experience lives on a bright, airy canvas — a cool-tinted
off-white (`#f0f0f3`) that gives the page a subtle technological coolness
without the starkness of pure white. This is a site that breathes: enormous
vertical spacing between sections creates a gallery-like pace where each feature
gets its own "room."

The design language is decisively monochromatic — pure black (`#000000`)
headlines against the lightest possible backgrounds, with a spectrum of cool
blue-grays (`#60646c`, `#b0b4ba`, `#555860`) handling all secondary
communication. Color is almost entirely absent from the interface itself; when
it appears, it's reserved for product screenshots, app icons, and the React
universe illustration — making the actual content burst with life against the
neutral canvas.

What makes Expo distinctive is its pill-shaped geometry. Buttons, tabs, video
containers, and even images use generously rounded or fully pill-shaped corners
(24px–9999px), creating an organic, approachable feel that contradicts the
typical sharp-edged developer tool aesthetic. Combined with tight letter-spacing
on massive headlines (-1.6px to -3px at 64px), the result is a design that's
simultaneously premium and friendly — like an Apple product page reimagined for
developers.

**Key Characteristics:**

- Luminous cool-white canvas (`#f0f0f3`) with gallery-like vertical spacing
- Strictly monochromatic: pure black headlines, cool blue-gray body text, no
  decorative color
- Pill-shaped geometry everywhere — buttons, tabs, containers, images
  (24px–9999px radius)
- Massive display headlines (64px) with extreme negative letter-spacing (-1.6px
  to -3px)
- Inter as the sole typeface, used at weights 400–900 for full expressive range
- Whisper-soft shadows that barely lift elements from the surface
- Product screenshots as the only source of color in the interface

## 2. Color Palette & Roles

### Primary

- **Expo Black** (`#000000`): The absolute anchor — used for primary headlines,
  CTA buttons, and the brand identity. Pure black on cool white creates maximum
  contrast without feeling aggressive.
- **Near Black** (`#1c2024`): The primary text color for body content — a barely
  perceptible blue-black that's softer than pure #000 for extended reading.

### Secondary & Accent

- **Link Cobalt** (`#0d74ce`): The standard link color — a trustworthy,
  saturated blue that signals interactivity without competing with the
  monochrome hierarchy.
- **Legal Blue** (`#476cff`): A brighter, more saturated blue for legal/footer
  links — slightly more attention-grabbing than Link Cobalt.
- **Widget Sky** (`#47c2ff`): A light, friendly cyan-blue for widget branding
  elements — the brightest accent in the system.
- **Preview Purple** (`#8145b5`): A rich violet used for "preview" or beta
  feature indicators — creating clear visual distinction from standard content.

### Surface & Background

- **Cloud Gray** (`#f0f0f3`): The primary page background — a cool off-white
  with the faintest blue-violet tint. Not warm, not sterile — precisely
  technological.
- **Pure White** (`#ffffff`): Card surfaces, button backgrounds, and elevated
  content containers. Creates a clear "lifted" distinction from Cloud Gray.
- **Widget Dark** (`#1a1a1a`): Dark surface for dark-theme widgets and overlay
  elements.
- **Banner Dark** (`#171717`): The darkest surface variant, used for promotional
  banners and high-contrast containers.

### Neutrals & Text

- **Slate Gray** (`#60646c`): The workhorse secondary text color (305
  instances). A cool blue-gray that's authoritative without being heavy.
- **Mid Slate** (`#555860`): Slightly darker than Slate, used for emphasized
  secondary text.
- **Silver** (`#b0b4ba`): Tertiary text, placeholders, and de-emphasized
  metadata. Comfortably readable but clearly receded.
- **Pewter** (`#999999`): Accordion icons and deeply de-emphasized UI elements
  in dark contexts.
- **Light Silver** (`#cccccc`): Arrow icons and decorative elements in dark
  contexts.
- **Dark Slate** (`#363a3f`): Borders on dark surfaces, switch tracks, and
  emphasized containment.
- **Charcoal** (`#333333`): Dark mode switch backgrounds and deep secondary
  surfaces.

### Semantic & Accent

- **Warning Amber** (`#ab6400`): A warm, deep amber for warning states —
  deliberately not bright yellow, conveying seriousness.
- **Destructive Rose** (`#eb8e90`): A soft pink-coral for disabled destructive
  actions — gentler than typical red, reducing alarm fatigue.
- **Border Lavender** (`#e0e1e6`): Standard card/container borders — a cool
  lavender-gray that's visible without being heavy.
- **Input Border** (`#d9d9e0`): Button and form element borders — slightly
  warmer/darker than card borders for interactive elements.
- **Dark Focus Ring** (`#2547d0`): Deep blue for keyboard focus indicators in
  dark theme contexts.

### Gradient System

- The design is notably **gradient-free** in the interface layer. Visual
  richness comes from product screenshots, the React universe illustration, and
  careful shadow layering rather than color gradients. This absence IS the
  design decision — gradients would undermine the clinical precision.

## 3. Typography Rules

### Font Family

- **Primary**: `Inter`, with fallbacks: `-apple-system, system-ui`
- **Monospace**: `JetBrains Mono`, with fallback: `ui-monospace`
- **System Fallback**:
  `system-ui, Segoe UI, Roboto, Helvetica, Arial, Apple Color Emoji, Segoe UI Emoji`

### Hierarchy

| Role            | Font           | Size           | Weight  | Line Height  | Letter Spacing | Notes                                  |
| --------------- | -------------- | -------------- | ------- | ------------ | -------------- | -------------------------------------- |
| Display / Hero  | Inter          | 64px (4rem)    | 700–900 | 1.10 (tight) | -1.6px to -3px | Maximum impact, extreme tracking       |
| Section Heading | Inter          | 48px (3rem)    | 600     | 1.10 (tight) | -2px           | Feature section anchors                |
| Sub-heading     | Inter          | 20px (1.25rem) | 600     | 1.20 (tight) | -0.25px        | Card titles, feature names             |
| Body Large      | Inter          | 18px (1.13rem) | 400–500 | 1.40         | normal         | Intro paragraphs, section descriptions |
| Body / Button   | Inter          | 16px (1rem)    | 400–700 | 1.25–1.40    | normal         | Standard text, nav links, buttons      |
| Caption / Label | Inter          | 14px (0.88rem) | 400–600 | 1.00–1.40    | normal         | Descriptions, metadata, badge text     |
| Tag / Small     | Inter          | 12px (0.75rem) | 500     | 1.00–1.60    | normal         | Smallest sans-serif text, badges       |
| Code Body       | JetBrains Mono | 16px (1rem)    | 400–600 | 1.40         | normal         | Inline code, terminal commands         |
| Code Caption    | JetBrains Mono | 14px (0.88rem) | 400–600 | 1.40         | normal         | Code snippets, technical labels        |
| Code Small      | JetBrains Mono | 12px (0.75rem) | 400     | 1.60         | normal         | Uppercase tech tags                    |

### Principles

- **One typeface, full expression**: Inter is the only sans-serif, used from
  weight 400 (regular) through 900 (black). This gives the design a unified
  voice while still achieving dramatic contrast between whisper-light body text
  and thundering display headlines.
- **Extreme negative tracking at scale**: Headlines at 64px use -1.6px to -3px
  letter-spacing, creating ultra-dense text blocks that feel like logotypes.
  This aggressive compression is the signature typographic move.
- **Weight as hierarchy**: 700–900 for display, 600 for headings, 500 for
  emphasis, 400 for body. The jumps are decisive — no ambiguous in-between
  weights.
- **Consistent 1.40 body line-height**: Nearly all body and UI text shares 1.40
  line-height, creating a rhythmic vertical consistency.

## 4. Component Stylings

### Buttons

**Primary (White on border)**

- Background: Pure White (`#ffffff`)
- Text: Near Black (`#1c2024`)
- Padding: 0px 12px (compact, content-driven height)
- Border: thin solid Input Border (`1px solid #d9d9e0`)
- Radius: subtly rounded (6px)
- Shadow: subtle combined shadow on hover
- The understated default — clean, professional, unheroic

**Primary Pill**

- Same as Primary but with pill-shaped radius (9999px)
- Used for hero CTAs and high-emphasis actions
- The extra roundness signals "start here"

**Dark Primary**

- Background: Expo Black (`#000000`)
- Text: Pure White (`#ffffff`)
- Pill-shaped (9999px) or generously rounded (32–36px)
- No border (black IS the border)
- The maximum-emphasis CTA — reserved for primary conversion actions

### Cards & Containers

- Background: Pure White (`#ffffff`) — clearly lifted from Cloud Gray page
- Border: thin solid Border Lavender (`1px solid #e0e1e6`) for standard cards
- Radius: comfortably rounded (8px) for standard cards; generously rounded
  (16–24px) for featured containers
- Shadow Level 1: Whisper
  (`rgba(0,0,0,0.08) 0px 3px 6px, rgba(0,0,0,0.07) 0px 2px 4px`) — barely
  perceptible lift
- Shadow Level 2: Standard
  (`rgba(0,0,0,0.1) 0px 10px 20px, rgba(0,0,0,0.05) 0px 3px 6px`) — clear
  floating elevation
- Hover: likely subtle shadow deepening or background shift

### Inputs & Forms

- Background: Pure White (`#ffffff`)
- Text: Near Black (`#1c2024`)
- Border: thin solid Input Border (`1px solid #d9d9e0`)
- Padding: 0px 12px (inline with button sizing)
- Radius: subtly rounded (6px)
- Focus: blue ring shadow via CSS custom property

### Navigation

- Sticky top nav on transparent/blurred background
- Logo: Expo wordmark in black
- Links: Near Black (`#1c2024`) or Slate Gray (`#60646c`) at 14–16px Inter
  weight 500
- CTA: Black pill button ("Sign Up") on the right
- GitHub star badge as social proof
- Status indicator ("All Systems Operational") with green dot

### Image Treatment

- Product screenshots and device mockups are the visual heroes
- Generously rounded corners (24px) on video and image containers
- Screenshots shown in realistic device frames
- Dark UI screenshots provide contrast against the light canvas
- Full-bleed within rounded containers

### Distinctive Components

**Universe React Logo**

- Animated/illustrated React logo as the visual centerpiece
- Connects Expo's identity to the React ecosystem
- The only illustrative element on an otherwise photographic page

**Device Preview Grid**

- Multiple device types (phone, tablet, web) shown simultaneously
- Demonstrates cross-platform capability visually
- Each device uses realistic device chrome

**Status Badge**

- "All Systems Operational" pill in the nav
- Green dot + text — compact trust signal
- Pill-shaped (36px radius)

## 5. Layout Principles

### Spacing System

- Base unit: 8px
- Scale: 1px, 2px, 4px, 8px, 12px, 16px, 24px, 32px, 40px, 48px, 64px, 80px,
  96px, 144px
- Button padding: 0px 12px (unusually compact — height driven by line-height)
- Card internal padding: approximately 24–32px
- Section vertical spacing: enormous (estimated 96–144px between major sections)
- Component gap: 16–24px between sibling elements

### Grid & Container

- Max container width: approximately 1200–1400px, centered
- Hero: centered single-column with massive breathing room
- Feature sections: alternating layouts (image left/right, full-width showcases)
- Card grids: 2–3 column for feature highlights
- Full-width sections with contained inner content

### Whitespace Philosophy

- **Gallery-like pacing**: Each section feels like its own exhibit, surrounded
  by vast empty space. This creates a premium, unhurried browsing experience.
- **Breathing room is the design**: The generous whitespace IS the primary
  design element — it communicates confidence, quality, and that each feature
  deserves individual attention.
- **Content islands**: Sections float as isolated "islands" in the white space,
  connected by scrolling rather than visual continuation.

### Border Radius Scale

- Nearly squared (4px): Small inline elements, tags
- Subtly rounded (6px): Buttons, form inputs, combo boxes — the functional
  interactive radius
- Comfortably rounded (8px): Standard content cards, containers
- Generously rounded (16px): Feature tabs, content panels
- Very rounded (24px): Buttons, video/image containers, tabpanels — the
  signature softness
- Highly rounded (32–36px): Hero CTAs, status badges, nav buttons
- Pill-shaped (9999px): Primary action buttons, tags, avatars — maximum
  friendliness

## 6. Depth & Elevation

| Level              | Treatment                                                         | Use                                     |
| ------------------ | ----------------------------------------------------------------- | --------------------------------------- |
| Flat (Level 0)     | No shadow                                                         | Cloud Gray page background, inline text |
| Surface (Level 1)  | White bg, no shadow                                               | Standard white cards on Cloud Gray      |
| Whisper (Level 2)  | `rgba(0,0,0,0.08) 0px 3px 6px` + `rgba(0,0,0,0.07) 0px 2px 4px`   | Subtle card lift, hover states          |
| Elevated (Level 3) | `rgba(0,0,0,0.1) 0px 10px 20px` + `rgba(0,0,0,0.05) 0px 3px 6px`  | Feature showcases, product screenshots  |
| Modal (Level 4)    | Dark overlay (`--dialog-overlay-background-color`) + heavy shadow | Dialogs, overlays                       |

**Shadow Philosophy**: Expo uses shadows as gentle whispers rather than
architectural statements. The primary depth mechanism is **background color
contrast** — white cards floating on Cloud Gray — rather than shadow casting.
When shadows appear, they're soft, diffused, and directional (downward),
creating the feeling of paper hovering millimeters above a desk.

## 7. Do's and Don'ts

### Do

- Use Cloud Gray (`#f0f0f3`) as the page background and Pure White (`#ffffff`)
  for elevated cards — the two-tone light system is essential
- Keep display headlines at extreme negative letter-spacing (-1.6px to -3px at
  64px) for the signature compressed look
- Use pill-shaped (9999px) radius for primary CTA buttons — the organic shape is
  core to the identity
- Reserve black (`#000000`) for headlines and primary CTAs — it carries maximum
  authority on the light canvas
- Use Slate Gray (`#60646c`) for secondary text — it's the precise balance
  between readable and receded
- Maintain enormous vertical spacing between sections (96px+) — the gallery
  pacing defines the premium feel
- Use product screenshots as the primary visual content — the interface stays
  monochrome, the products bring color
- Apply Inter at the full weight range (400–900) — weight contrast IS the
  hierarchy

### Don't

- Don't introduce decorative colors into the interface chrome — the
  monochromatic palette is intentional
- Don't use sharp corners (border-radius < 6px) on interactive elements — the
  pill/rounded geometry is the signature
- Don't reduce section spacing below 64px — the breathing room is the design
- Don't use heavy drop shadows — depth comes from background contrast and
  whisper-soft shadows
- Don't mix in additional typefaces — Inter handles everything from display to
  caption
- Don't use letter-spacing wider than -0.25px on body text — extreme tracking is
  reserved for display only
- Don't use borders heavier than 2px — containment is subtle, achieved through
  background color and gentle borders
- Don't add gradients to the interface — visual richness comes from content, not
  decoration
- Don't use saturated colors outside of semantic contexts — the palette is
  strictly grayscale + functional blue

## 8. Responsive Behavior

### Breakpoints

| Name    | Width      | Key Changes                                                            |
| ------- | ---------- | ---------------------------------------------------------------------- |
| Mobile  | <640px     | Single column, hamburger nav, stacked cards, hero text scales to ~36px |
| Tablet  | 640–1024px | 2-column grids, condensed nav, medium hero text                        |
| Desktop | >1024px    | Full multi-column layout, expanded nav, massive hero (64px)            |

_Only one explicit breakpoint detected (640px), suggesting a fluid,
container-query or min()/clamp()-based responsive system rather than fixed
breakpoint snapping._

### Touch Targets

- Buttons use generous radius (24–36px) creating large, finger-friendly surfaces
- Navigation links spaced with adequate gap
- Status badge sized for touch (36px radius)
- Minimum recommended: 44x44px

### Collapsing Strategy

- **Navigation**: Full horizontal nav with CTA collapses to hamburger on mobile
- **Feature sections**: Multi-column → stacked single column
- **Hero text**: 64px → ~36px progressive scaling
- **Device previews**: Grid → stacked/carousel
- **Cards**: Side-by-side → vertical stacking
- **Spacing**: Reduces proportionally but maintains generous rhythm

### Image Behavior

- Product screenshots scale proportionally
- Device mockups may simplify or show fewer devices on mobile
- Rounded corners maintained at all sizes
- Lazy loading for below-fold content

## 9. Agent Prompt Guide

### Quick Color Reference

- Primary CTA / Headlines: "Expo Black (#000000)"
- Page Background: "Cloud Gray (#f0f0f3)"
- Card Surface: "Pure White (#ffffff)"
- Body Text: "Near Black (#1c2024)"
- Secondary Text: "Slate Gray (#60646c)"
- Borders: "Border Lavender (#e0e1e6)"
- Links: "Link Cobalt (#0d74ce)"
- Tertiary Text: "Silver (#b0b4ba)"

### Example Component Prompts

- "Create a hero section on Cloud Gray (#f0f0f3) with a massive headline at 64px
  Inter weight 700, line-height 1.10, letter-spacing -3px. Text in Expo Black
  (#000000). Below, add a subtitle in Slate Gray (#60646c) at 18px. Place a
  black pill-shaped CTA button (9999px radius) beneath."
- "Design a feature card on Pure White (#ffffff) with a 1px solid Border
  Lavender (#e0e1e6) border and comfortably rounded corners (8px). Title in Near
  Black (#1c2024) at 20px Inter weight 600, description in Slate Gray (#60646c)
  at 16px. Add a whisper shadow (rgba(0,0,0,0.08) 0px 3px 6px)."
- "Build a navigation bar with Expo logo on the left, text links in Near Black
  (#1c2024) at 14px Inter weight 500, and a black pill CTA button on the right.
  Background: transparent with blur backdrop. Bottom border: 1px solid Border
  Lavender (#e0e1e6)."
- "Create a code block using JetBrains Mono at 14px on a Pure White surface with
  Border Lavender border and 8px radius. Code in Near Black, keywords in Link
  Cobalt (#0d74ce)."
- "Design a status badge pill (9999px radius) with a green dot and 'All Systems
  Operational' text in Inter 12px weight 500. Background: Pure White, border:
  1px solid Input Border (#d9d9e0)."

### Iteration Guide

1. Focus on ONE component at a time
2. Reference specific color names and hex codes — "use Slate Gray (#60646c)" not
   "make it gray"
3. Use radius values deliberately — 6px for buttons, 8px for cards, 24px for
   images, 9999px for pills
4. Describe the "feel" alongside measurements — "enormous breathing room with
   96px section spacing"
5. Always specify Inter and the exact weight — weight contrast IS the hierarchy
6. For shadows, specify "whisper shadow" or "standard elevation" from the
   elevation table
7. Keep the interface monochrome — let product content be the color