Back to samples

vercel_DESIGN.md

vercel.com Sample

EN322 lines

Before coding, understand the context and define a bold aesthetic direction:

Design System Overview

可视化设计令牌

Vercel employs an ultra-minimalist developer-focused aesthetic: pure white foundations, high-contrast black typography, pill-shaped interactions, and vibrant gradient meshes reserved for hero moments. Technical but approachable, with code-forward visual language and precise geometric alignment.

Brand Palette

Pure White

Primary page background and clean canvas foundation

#ffffff

Soft Gray

Alternate section backgrounds and subtle surface variation

#fafafa

True Black

Primary text, headings, and primary button fills

#000000

Secondary Text

Body copy, descriptions, and muted UI labels at 60% opacity

#666666

Warm Orange

Hero gradient mesh warm accent (left side)

#f59e0b

Teal Cyan

Hero gradient mesh cool accent (right side)

#14b8a6

Hairline Border

Card borders, section dividers, and grid lines at 10% opacity

#e5e5e5

Code Background

Editor panes, code blocks, and technical interface surfaces

#f9f9f9
Typography

Hero Display

Aa Design System

48-64px / 700 / line-height 1.1 · Large product narrative headlines with tight letter-spacing

Section Heading

Aa Design System

32-40px / 600 / line-height 1.2 · Capability and feature section headings

Interface Body

Aa Design System

16px / 400 / line-height 1.6 · Body text, descriptions, and feature explanations at 60% opacity

Mono Code

Aa Design System

14px / 400 / line-height 1.6 · Code blocks, technical metrics, syntax highlighting, and UI labels

Visual Traits
minimalistdeveloper-toolgradient-meshpill-buttonsbento-grid
Spacing
4px base unit12-24px component padding24-48px card internal spacing80-120px section vertical rhythm
Radius
9999px pill buttons and badges8px compact controls and inputs12-16px cards and containers
Effects
1px solid rgba(0,0,0,0.1) hairline bordersbackdrop-filter blur on navigation (12px)radial gradient mesh with orange-yellow to teal-cyan diffusionsubtle 0 1px 2px rgba(0,0,0,0.05) card shadowsspring-physics transitions at 0.3s ease-out

Hero Gradient Mesh

Centered headline over a vibrant multi-color radial gradient background transitioning from warm orange-yellow to cool teal-cyan with geometric line patterns.

Framework Node Graph

Asymmetric layout with framework icons connected by colored lines to a central logo, illustrating ecosystem connectivity.

AI Gateway Split Editor

Two-column split with syntax-highlighted code editor on the left and live data metrics leaderboard on the right.

Bento Product Grid

Asymmetric CSS grid showcasing product capabilities with varying card sizes, 1px borders, and arrow links.

Pill Badge Typography

Inline pill-shaped badges used within headlines to highlight keywords like Enterprise and Security.

DESIGN.md
Raw markdown output

# Design Thinking
Before coding, understand the context and define a bold aesthetic direction:
- **Purpose**: What problem does this interface solve? Who is using it?
- **Style**: Choose an extreme style: minimalism, maximalism, retro-futurism, organic/natural, luxury/artisanal, playful/toy-like, magazine/editorial, raw/rough, art deco/geometric, soft pastel, industrial/practical, etc. There are many styles to choose from. You can draw inspiration from them, but ensure your design truly aligns with the selected aesthetic direction.
- **Constraints**: Technical requirements (frameworks, performance, accessibility).
- **Differentiation**: What makes it memorable? What one thing will people remember?
**Key**: Choose a clear conceptual direction and execute it precisely. Both bold maximalism and refined minimalism are viable — the key is intention, not intensity.
## Aesthetic Default Settings
- Start with composition, not components.
- Prioritize full-bleed hero images or full-canvas visual anchors.
- Make the brand or product name the most prominent text.
- Keep copy concise for quick scanning.
- Use white space, alignment, scaling, cropping, and contrast before adding borders.
- Default constraint system: no more than two fonts and one accent color.

# Overall Atmosphere

## Design System

### 1. Core Style
Ultra-minimalist developer-focused aesthetic emphasizing precision and speed. Clean monochromatic base with strategic use of vibrant gradients for hero moments. Heavy reliance on grid systems and geometric alignment. Technical but approachable, with code-forward visual language and interactive data visualizations.

### 2. Color Palette
- **Primary Background**: `#ffffff` (Pure white) with subtle gray `#fafafa` alternates
- **Text Primary**: `#000000` (Pure black) with high contrast hierarchy
- **Text Secondary**: `rgba(0,0,0,0.6)` for body copy and descriptions
- **Accent**: Vibrant gradient meshes (orange-yellow to teal-cyan) in hero sections
- **Borders**: `rgba(0,0,0,0.1)` hairline borders for structure and separation
- **Interactive States**: Black fill for primary actions, white/transparent for secondary

### 3. Font Stack
**Primary**: Geist Sans (Variable font, sans-serif) - Clean, technical, highly legible at all weights  
**Secondary**: Geist Mono (Monospace) - Used for code blocks, technical metrics, and UI labels  
**Weights**: 400 (Regular), 500 (Medium), 600 (Semibold), 700 (Bold)

### 4. Texture
- Subtle grid overlay patterns (visible in hero and infrastructure sections)
- Hairline 1px borders creating cellular/grid layouts
- Soft gradient meshes with radial diffusion (hero background)
- Glass-morphism subtle blur effects on navigation and cards
- Geometric line illustrations connecting framework icons

### 5. Motion Design
- Smooth spring-physics transitions (0.3s ease-out)
- Staggered entrance animations for grid items
- Interactive globe with pulsing node indicators
- Tab switching with sliding indicator transitions
- Morphing button states with scale and opacity shifts
- Continuous subtle gradient shifts in hero background

## Component Guidelines

### Button
- **Primary**: Black background (`#000`), white text, full rounded corners (`border-radius: 9999px`), medium padding (12px 20px), inline-flex with icon + text
- **Secondary**: Transparent background, black border (1px), black text, same rounded radius
- **Ghost**: No border, black text with hover underline or background fill
- **Sizes**: Small (32px height), Medium (40px height), Large (48px height)

### Card
- Background: White or transparent
- Border: 1px solid `rgba(0,0,0,0.1)`
- Border Radius: 12px-16px for containers, 8px for inner elements
- Shadow: None or very subtle `0 1px 2px rgba(0,0,0,0.05)`
- Padding: 24px-48px depending on content density
- Hover: Subtle border darkening or background shift to `rgba(0,0,0,0.02)`

### Navigation
- Fixed header with blur backdrop (`backdrop-filter: blur(12px)`)
- Background: `rgba(255,255,255,0.8)` with transparency
- Dropdown menus: Card-style with shadow, rounded corners, organized in grid columns
- Mobile: Sheet-style overlay from top with full-width items

### Input
- Minimal styling, 1px border `rgba(0,0,0,0.2)`
- Border radius: 8px
- Focus state: Border color shift to black
- Background: White or transparent

### Typography
- **Hero H1**: 48px-64px, font-weight 700, letter-spacing -0.02em, line-height 1.1
- **Section H2**: 32px-40px, font-weight 600, tight line-height
- **H3**: 24px, font-weight 600
- **Body**: 16px, line-height 1.6, color at 60% opacity black
- **Code/Mono**: 14px, Geist Mono, syntax highlighting with muted colors

## Distinctive Element Few-shot Examples

### 1. Hero Section with Gradient Mesh
**Purpose:** Primary value proposition display with immersive gradient background and dual CTA pattern
**Evidence:** Screenshot 1 shows "Build and deploy on the AI Cloud." with vibrant orange-to-teal gradient radiating from center, overlaid with geometric triangle logo and radial line patterns.
**Visual Rules:**
- Layout: Centered text stack (heading + subheading + button row) over full-width gradient canvas
- Color: Radial gradient mesh transitioning from warm orange/yellow (left) to cool teal/cyan (right), with white center glow
- Typography: Massive bold sans-serif (48-64px) for headline, regular weight (18px) for subtitle at 60% opacity
- Spacing: Generous vertical padding (120px+), 24px between text elements, 16px between buttons
- Radius / border / shadow: Buttons fully rounded (pill shape), no borders on hero container
- Motion: Gradient subtly shifts/pulses, content fades in with Y-translate on load
**Recreation Prompt:**
> Create a hero section with a vibrant multi-color radial gradient background (orange-yellow left, teal-cyan right) centered behind the content. Place a large bold headline "Build and deploy on the AI Cloud." centered at top, followed by smaller descriptive text, then a button row with a primary black pill button ("Start Deploying" with triangle icon) and secondary white/ghost pill button ("Get a Demo"). Add subtle animated radial lines emanating from center. Use Geist font family. Ensure high contrast text remains readable over gradient.
**Structure Sketch:**
```html
<section class="hero">
  <div class="gradient-mesh-background"></div>
  <div class="content">
    <h1>Build and deploy on the AI Cloud.</h1>
    <p>Vercel provides the developer tools...</p>
    <div class="button-row">
      <a class="button-primary">Start Deploying</a>
      <a class="button-secondary">Get a Demo</a>
    </div>
  </div>
  <svg class="geometric-pattern"></svg>
</section>
```

### 2. Framework-Defined Infrastructure Grid
**Purpose:** Showcase technical ecosystem connectivity through visual node-graph illustration
**Evidence:** Screenshot 2 displays framework icons (Svelte, Vite, Next.js, Nuxt, Turbopack) connected by colored lines to central Vercel triangle, with explanatory text block.
**Visual Rules:**
- Layout: Asymmetric grid with illustration left (40%), content right (60%) or stacked vertically on mobile
- Color: White background, multi-colored connector lines (matching brand colors of each framework), black text
- Typography: Eyebrow text small caps/label style above headline, body text at 16px with generous line-height
- Spacing: Large section padding (80px+), 32px gap between visual and text
- Radius / border / shadow: No visible borders, clean minimal separation
- Motion: Lines draw in on scroll (SVG path animation), icons fade in sequentially
**Recreation Prompt:**
> Design a section with a "Framework-Defined Infrastructure" label above a large heading. Left side: Create a node graph visualization with a central black triangle logo connected by curved colored lines to surrounding framework icons (Svelte orange, Vue green, Next.js black, Nuxt green, Turbopack red). Right side: Text block explaining "From code to infrastructure in one git push." Use a clean white background with subtle grid lines. Add browser mockup chrome (red/yellow/green dots) around the illustration to suggest a web interface.
**Structure Sketch:**
```html
<section class="framework-grid">
  <div class="visual">
    <div class="browser-chrome">
      <div class="node-graph">
        <div class="center-logo"></div>
        <div class="framework-nodes">
          <span class="node svelte"></span>
          <span class="node nextjs"></span>
          <!-- etc -->
        </div>
        <svg class="connecting-lines"></svg>
      </div>
    </div>
  </div>
  <div class="content">
    <span class="eyebrow">Framework-Defined Infrastructure</span>
    <h2>From code to infrastructure in one git push...</h2>
  </div>
</section>
```

### 3. Interactive Globe Infrastructure Section
**Purpose:** Visualize global CDN/edge network coverage with interactive 3D globe and pulsing nodes
**Evidence:** Screenshot 2 shows "Deploy once, deliver everywhere." section with wireframe globe visualization at bottom showing nodes with pulsing activity indicators.
**Visual Rules:**
- Layout: Centered text header, full-width or large container for globe visualization below
- Color: Monochrome wireframe (light gray lines) for globe, blue/cyan pulses for active nodes
- Typography: Centered alignment, mixed weight headline with inline styled words (pill badges for "Enterprise" and "Security")
- Spacing: Massive vertical section spacing, globe takes 60% of viewport height
- Radius / border / shadow: No borders on globe container, clean technical aesthetic
- Motion: Globe rotates slowly, nodes pulse with radial rings, lines connect nodes with animated data flow
**Recreation Prompt:**
> Create a section with centered text reading "Scale your [Enterprise pill] without compromising [Security pill]" followed by "Deploy once, deliver everywhere." subtitle. Below, implement a 3D wireframe globe visualization using WebGL or Canvas showing a sphere with latitude/longitude lines. Add glowing pulse points at various global locations to represent edge nodes. Include two pill buttons below text: primary black "More about Infrastructure" and secondary white "Learn about Enterprise". Background should be pure white with subtle vertical grid lines extending through the section.
**Structure Sketch:**
```html
<section class="infrastructure-globe">
  <div class="text-center">
    <h2>Scale your <span class="pill-badge">Enterprise</span> without compromising <span class="pill-badge">Security</span></h2>
    <p>Deploy once, deliver everywhere...</p>
    <div class="button-row">
      <button>More about Infrastructure</button>
      <button class="secondary">Learn about Enterprise</button>
    </div>
  </div>
  <div class="globe-container">
    <canvas id="globe-visualization"></canvas>
    <div class="sr-only">Nodes on the globe are sending out small pulses to indicate activity</div>
  </div>
</section>
```

### 4. AI Gateway Code Editor with Leaderboard
**Purpose:** Demonstrate technical product interface through split-screen code editor and live data metrics
**Evidence:** Screenshot 3 shows code editor on left with syntax-highlighted AI SDK code, right side shows "Top models" ranked list with percentages and colored dots.
**Visual Rules:**
- Layout: Two-column grid (60/40 split), code editor left, data panel right
- Color: Editor has light gray background (`#f9f9f9`) with syntax highlighting (blue strings, purple keywords, orange functions), white data panel with subtle row separators
- Typography: Monospace 14px for code, sans-serif for UI labels, small text for "Top models" header
- Spacing: 24px padding inside editor, 16px row height in leaderboard
- Radius / border / shadow: Editor has rounded corners (12px), hairline border, subtle shadow
- Motion: Code typing animation optional, tab switching between "AI SDK", "Python", "OpenAI HTTP"
**Recreation Prompt:**
> Build a split-section with a code editor interface on the left showing JavaScript code for AI SDK with line numbers, syntax highlighting (blue imports, red strings, green comments), and tabs for different languages above. Right side: A "Top models on [date]" leaderboard showing ranked list items with colored status dots (blue, purple, green) and percentage values aligned right. Below code editor, show "Use it with" followed by small logo pills (OpenAI, xAI, Anthropic). Container should have rounded corners and subtle border.
**Structure Sketch:**
```html
<section class="ai-gateway">
  <div class="editor-pane">
    <div class="tabs">
      <button class="active">AI SDK</button>
      <button>Python</button>
      <button>OpenAI HTTP</button>
    </div>
    <pre class="code-block">
      <code>import { streamText } from 'ai'</code>
    </pre>
  </div>
  <div class="leaderboard-pane">
    <h4>Top models on May 8, 2026</h4>
    <ul>
      <li><span class="dot blue"></span>Gemini 3 Flash <span class="metric">26.8%</span></li>
      <!-- more items -->
    </ul>
  </div>
</section>
```

### 5. Product Delivery Bento Grid
**Purpose:** Showcase product capabilities through asymmetric grid layout with varying card sizes
**Evidence:** Screenshot 2 shows "Your product, delivered." section with large feature cards for Agents, AI Apps, Web Apps, Commerce, and Multi-tenant Platform in a 2x3 or similar bento-style grid.
**Visual Rules:**
- Layout: CSS Grid with varying column spans (some cards span 2 columns, others 1)
- Color: White cards with light gray borders (`rgba(0,0,0,0.1)`), black text, minimal use of color except product icons
- Typography: Large card titles (24px), small descriptive text below, arrow icon for "learn more" indication
- Spacing: 24px gap between cards, 32px internal padding
- Radius / border / shadow: 12px-16px border radius, 1px solid borders, no shadow or very subtle
- Motion: Hover lifts card slightly or darkens border, images inside cards may have subtle parallax
**Recreation Prompt:**
> Create a bento grid layout section titled "Your product, delivered." with 5 cards arranged in a masonry-style grid: Agents (large, left), AI Apps (medium, right), Web Apps (medium, bottom left), Composable Commerce (medium, bottom center), Multi-tenant Platform (tall, right). Each card should have a header with title and description, an arrow link button, and internal UI mockups showing the feature (chat interfaces, domain lists, etc.). Use 1px light gray borders, 16px rounded corners, and generous internal spacing. Cards should be white on white background with subtle hover state darkening the border.
**Structure Sketch:**
```html
<section class="product-grid">
  <h2>Your product, delivered.</h2>
  <div class="bento-grid">
    <article class="card large">
      <header>
        <h3>Agents</h3>
        <p>Deliver more value...</p>
        <a class="arrow-link"></a>
      </header>
      <div class="preview-ui"></div>
    </article>
    <article class="card medium">
      <h3>AI Apps</h3>
      <!-- content -->
    </article>
    <!-- additional cards -->
  </div>
</section>
```

## Engineering CSS Evidence

Compressed from live DOM computed styles. This section keeps high-frequency tokens and intent, not raw CSS dumps.

### Compressed Design Tokens

**Mode:** mixed

#### Color Roles
- **color.text.primary:** #4d4d4d (108)
- **color.text.secondary:** #4d4d4d (49)
- **color.surface.base:** #ffffff (13)
- **color.accent:** #666666 (118)
- **color.border.default:** #4d4d4d (108)
- **color.focus.ring:** #4d4d4d (108)

#### Typography Roles
- **font.family.primary:** Geist (219)
- **font.family.secondary:** Geist Mono (32)
- **font.size.display:** 48px (35)
- **font.size.body:** 12px (38)
- **font.size.label:** 12px (49)
- **ratio:** display is 4x body

#### Spacing Rhythm
- **base unit:** 4px
- **space.1:** 2px (284)
- **space.2:** 12px (265)
- **space.3:** 10px (34)
- **space.4:** 16px (30)
- **space.5:** 8px (25)

#### Radius Roles
- **radius.medium:** 6px (41)
- **radius.pill:** 100px (11)

#### Shadow Intent
- **level:** layered
- **usage:** 16
- **note:** 5 recurring shadow treatments, compressed to intent

#### Motion Intent
- **level:** moderate
- **range:** 90-400ms
- **common durations:** 100ms (59), 150ms (57), 90ms (5)
- **easing style:** ease-in-out (37), cubic-bezier(0.39, 0.18, 0.17, 0.99) (1), ease-out (1)

### Distinctive Implementation Signals

- Frequent pill radius (100px) creates a soft/capsule interaction language.
- Elevation appears as a recurring material cue, not a one-off decoration.
- Motion is moderate, centered around 90-400ms.
- Type hierarchy is ratio-driven: display is 4x body.

### Extraction Diagnostics

- Sampled 280 visible elements from 3061 total DOM elements.
- Confidence: high.
- No extraction warnings.

## Core Principles
1. Firmly Refuse (Negative Constraints):
- Prohibit using purple/blue gradients on white backgrounds
- Prohibit using common fonts (Inter, Roboto, Arial, system-ui)
- Prohibit using predictable hero-CTA-feature-review templates
- Prohibit using common geometric shapes or abstract spots
- Prohibit using visual effects that look like stock images or clichés
## Performance Optimization
- Ensure pages load quickly, avoid unnecessary large resources
- Use modern image formats (WebP) and appropriate compression
- Implement lazy loading techniques for long page content
**Important Note**: The implementation complexity should match the aesthetic vision. Maximalist designs require complex code as well as a lot of animations and effects. Minimalist or refined designs require restraint, precision, and attention to spacing, typography, and subtle details. Elegance comes from a perfect interpretation of the vision.

Generated Preview

Design.md 风格预览

iframe 预览可能会导致部分字体、动画、外部资源或复杂效果无法渲染;最终展示请优先参考上方截图。

Vercel generated style preview
iframe preview may be incomplete