HashiCorp Design System
A near-black canvas where Terraform purple, Vault yellow and Consul pink mark each product, set in hashicorpSans. Tokens for React, Next.js and AI tools.
- Primary color
- #000000
- Typeface
- hashicorpSans
- Shape
- Mixed
- Base radius
- 8px
- Colors
- 30
- Type tokens
- 12
- Components
- 22
- Spacing values
- 9
About HashiCorp DESIGN.md
Curated by Dov Azencot, updated May 12, 2026. Source hashicorp.com (opens in a new tab).
HashiCorp's marketing brand is one of the most disciplined dark-canvas systems on the web. Every public page sits on pure black #000000, lifts to charcoal #15181e for cards, and uses a system of per-product accent colors — Terraform purple, Vault yellow, Consul red, Waypoint cyan, Vagrant blue, Nomad green, Boundary coral — to signal which tool a given section represents. The accents are identity tokens, not decoration: a Terraform card lifts onto a violet ground, a Vault card onto yellow, a Waypoint card onto cyan. A reader scrolling the homepage can tell which product a section belongs to from the corner of their eye, before reading a single word.
This page packages all of that into a single DESIGN.md file. Inside: 30 colors tokens grouped into brand, surface, hairline, text, per-product identity, and semantic bands; 12 typography styles spanning an 80px display down to 12px eyebrow; 8 corner-radius tokens; 9 spacing values built on an 8px base; and 22 components covering buttons (white, charcoal, ghost, and per-product variants), cards (feature, pricing, resource, and chromatic product cards), inputs, pills, comparison rows, CTA banners, navigation, and footer. The format is the Google Labs DESIGN.md spec.
Feed the file to Claude, Cursor, or GitHub Copilot and the agent reproduces HashiCorp's specific discipline — black canvas, surface lift instead of shadow, 8px engineered corners, per-product identity surfaces — instead of a generic dark theme. Reference the tokens directly for Tailwind config, CSS variables, or your own component library. The system is worth studying because it solves a hard problem: a multi-product portfolio that has to feel coherent without flattening into a single house color.
What makes it distinct
5 highlights
- Per-product identity paletteTerraform #7b42bc, Vault #ffcf25, Consul #e62b1e, Waypoint #14c6cb, Vagrant #1868f2, Nomad #00ca8e, Boundary #f24c53
- Black-only marketing canvas#000000 carries hero, body, pricing, and footer; no light mode in the public surface
- Surface lift over shadowCanvas to surface-1 (#15181e) to surface-2 (#1f232b) handles elevation, never drop shadows
- Engineered CTA shape8px rounded buttons, not pills; reads as developer-tool not consumer-app
- One typeface across the scaleHashicorpSans at 500/600/700 carries display, body, and microcopy with no mono
30 colors
HashiCorp's system anchors on #000000 (primary) as its primary color. Type is set in hashicorpSans across 12 tokens from 12px to 80px, weights 500–700. Shape language is mixed across 22 components, blending pills, soft rounds, and squarer corners.
Brand & Accent
Sparing, CTA-only voltage · 2
Surface
Page and card backgrounds · 4
Text
Headlines, body, captions · 5
Borders & Hairlines
Dividers, outlines, rules · 2
Semantic
Status, errors, success, links · 3
Other
Specialty colors · 14
12 type tokens
Set in hashicorpSans across 12 tokens, from 12px to 80px, weights 500–700. Shown in its own stack: where the font isn't installed, the fallback the file names stands in.
- display-xl80px · weight 700 · lh 1.17 · tracking -2.5pxThe quick brown fox jumps over the lazy dog
- display-lg56px · weight 700 · lh 1.18 · tracking -1.6pxThe quick brown fox jumps over the lazy dog
- display-md40px · weight 600 · lh 1.19 · tracking -1.0pxThe quick brown fox jumps over the lazy dog
- headline28px · weight 600 · lh 1.21 · tracking -0.6pxThe quick brown fox jumps over the lazy dog
- card-title22px · weight 600 · lh 1.18 · tracking -0.4pxThe quick brown fox jumps over the lazy dog
- subhead20px · weight 600 · lh 1.35 · tracking -0.2pxThe quick brown fox jumps over the lazy dog
- body-lg18px · weight 500 · lh 1.69The quick brown fox jumps over the lazy dog
- body16px · weight 500 · lh 1.5The quick brown fox jumps over the lazy dog
- body-sm14px · weight 500 · lh 1.71The quick brown fox jumps over the lazy dog
- caption13px · weight 500 · lh 1.38 · tracking 0.2pxThe quick brown fox jumps over the lazy dog
- button14px · weight 600 · lh 1.29The quick brown fox jumps over the lazy dog
- eyebrow12px · weight 600 · lh 1.23 · tracking 0.6pxThe quick brown fox jumps over the lazy dog
Radii and spacing
8 corner radii and 9 spacing values. Shape language: mixed, on a 8px base radius.
Radii8
- xs4px
- sm6px
- md8px
- lg12px
- xl16px
- xxl24px
- pill9999px
- full9999px
Spacing9
- hair1px
- xxs4px
- xs8px
- sm12px
- md16px
- lg24px
- xl32px
- xxl48px
- section96px
22 components
Each rendered from its tokens (color, type, radius, padding) on HashiCorp's own canvas.
- Button PrimaryButton Primarybutton-primary
- Button Primary PressedButton Primary Pressedbutton-primary-pressed
- Button SecondaryButton Secondarybutton-secondary
- Button TertiaryButton Tertiarybutton-tertiary
- Button Product TerraformButton Product Terraformbutton-product-terraform
- Button Product VaultButton Product Vaultbutton-product-vault
- Button Product WaypointButton Product Waypointbutton-product-waypoint
- Product CardProduct Cardproduct-card
- Product Card TerraformProduct Card Terraformproduct-card-terraform
- Product Card VaultProduct Card Vaultproduct-card-vault
- Product Card WaypointProduct Card Waypointproduct-card-waypoint
- Feature CardFeature Cardfeature-card
- Pricing CardPricing Cardpricing-card
- Pricing Card FeaturedPricing Card Featuredpricing-card-featured
- Resource CardResource Cardresource-card
- Type here…Text Inputtext-input
- Type here…Text Input Focusedtext-input-focused
- Product PillProduct Pillproduct-pill
- Top NavTop Navtop-nav
- Comparison RowComparison Rowcomparison-row
- Cta BannerCta Bannercta-banner
- FooterFooterfooter
The system, in use
HashiCorp's tokens on the kind of product it builds.
The fastest way to build and ship software
Deploy from git in seconds, scale on demand and keep every environment in sync.
HashiCorp design system FAQ
HashiCorp's tokens, its components and how to use this DESIGN.md in your project.
Related reading
Specs, directories and component libraries that pair with this design system.
- Browse all design systemsThe full directory of DESIGN.md files on shadcn.io, with live mockups for each.shadcn.io
- HashiCorp brand resourcesOfficial brand guidelines, product logomarks, and color spec from HashiCorp.hashicorp.com (opens in a new tab)
- The DESIGN.md specificationGoogle Labs' open spec for machine-readable design system files — the format this page is built on.github.com (opens in a new tab)
Use HashiCorp in your project
One machine-readable file. Drop it into Claude Code, Cursor, VS Code or any AI tool that reads DESIGN.md.
Download the DESIGN.md
One machine-readable file: every color, type, radius, spacing, and component token of HashiCorp.
Feed it to your AI tool
Drop it into Claude, Cursor, or GitHub Copilot. The agent writes React components and Tailwind classes that match HashiCorp's visual language.
Reference the tokens directly
Or paste the values into your Tailwind config, CSS variables, or component library: every color, size and radius is a quoted, ready-to-copy value.
Read the full DESIGN.md overview, rationale, do’s and don’ts
Overview
HashiCorp's marketing canvas is a near-black ground that serves a multi-product portfolio without ever feeling generic. The dominant surface is {colors.canvas} (pure black) layered with {colors.surface-1} charcoal cards and 1px translucent gray hairlines. The chrome is monochrome — white pill-rounded buttons ({components.button-primary}), white type, gray secondary type — but the system is held together by a palette of per-product accent colors that signal which HashiCorp tool a given section belongs to: Terraform purple, Vault yellow, Consul red, Waypoint cyan, Vagrant blue, Nomad green, Boundary coral.
Display type is hashicorpSans at weights 600/700 with tight line-heights (1.17–1.21); body type is the same family at 500 weight with deliberately relaxed line-heights (1.50–1.71) — the contrast feels editorial, not enterprise-templated. CTAs use small {rounded.md} 8px corners rather than pills, which keeps the system reading as developer-facing rather than consumer-y.
The signature device is the product-card family — each HashiCorp product gets its own colored card variant on the home and infrastructure pages, lifting Terraform into a violet ground, Vault into yellow, Waypoint into cyan. These aren't decorative gradients — they're identity surfaces. A reader scrolling the page can tell which product a section is about from the corner of their eye.
Key Characteristics:
- Black-canvas marketing system:
{colors.canvas}is the surface for hero, body, pricing, comparison tables, and footer alike. - Per-product color identity: Terraform
{colors.product-terraform}, Vault{colors.product-vault}, Waypoint{colors.product-waypoint}, Vagrant{colors.product-vagrant}, Consul{colors.product-consul}, Nomad{colors.product-nomad}, Boundary{colors.product-boundary}— each with its own button + card variant. - Display headlines run hashicorpSans 600/700 with line-height 1.17–1.21 (tight); body runs the same family at 500 with 1.50–1.71 (relaxed) — the proportional gap is the brand's voice.
- CTA shape is
{rounded.md}8px — not a pill — keeping the system reading as developer-tool rather than consumer-app. - Charcoal surface lift (canvas → surface-1 → surface-2) instead of shadow-driven elevation.
- 1px translucent gray hairlines (
rgba(178,182,189,0.1)) define cards and dividers — the borders are felt more than seen. - Eyebrow typography (12–13px, 600 weight, 0.6px positive tracking, uppercase) marks every section as a category label.
Known Gaps
- The exact product-color hex values come from the
--mds-color-*CSS variable set extracted directly; they are HashiCorp's canonical brand spec. - Shadow tokens are not extensively documented because the dark surface system uses surface lift instead of shadow elevation.
- Form-field error and validation styling is not visible on the inspected pages.
- Dark mode is the only marketing mode — light-mode adaptation is not documented.
- Product-card variants for Consul, Nomad, Vagrant, and Boundary follow the documented Terraform / Vault / Waypoint pattern but are referenced in prose only; if they need formal entries they can be added as
product-card-consul,product-card-nomad, etc.
More systems like this
Biome, CircleCI, ClickHouse and 33 more in Backend, Database & DevOps: each brand's colors, type and components in one file your AI agent builds from.
Build it with Pro
The DESIGN.md files are free. Pro adds 6,000+ blocks, premium templates and the MCP server, so your AI editor builds in your system for you.
4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.
Billing
Billed once a year in USD. Cancel anytime.
- How many people can use the license.
- Client work, SaaS products and anything you charge for.
- Page sections in 56 categories, from heroes and pricing tables to dashboards and settings, on every framework and UI library, in your theme.
- Complete Next.js sites for startups, SaaS, agencies and portfolios, every page designed, ready to ship.
- Your AI agent searches, previews and installs any component, block, icon or DESIGN.md from a prompt: 22 tools in Claude Code, Cursor, VS Code and 35 more clients.
- Buttons with motion and states of their own, from an arrow that slides in to a burst of confetti.
- Typewriters, scrambles, counters and more, for headlines, labels and numbers.
- Animated backgrounds for heroes, sections and cards, from a soft aurora to a flock that flees the cursor. Most are pure CSS.
- WebGPU shaders, from a slow aurora to a black hole, each drawing only while it's on screen.
- One design and one theme on all four: the components, blocks and effects are built for each framework.
- React on Base UI, Radix UI, React Aria or Ark UI: install the version for the library your project already uses. Vue, Svelte and Solid run on Ark UI.
- From a button to a date picker, a color picker or a guided tour: accessible, typed in TypeScript, each with live demos.
- Real-world patterns built from the components, in 53 galleries: forms, tables, menus, dialogs and more.
- Area, bar, line, pie, radar and radial charts on TanStack Charts, on every framework. React also gets the Recharts originals.
- Debounce, local storage, media queries and more: each hook is one typed file you own.
- From 222 libraries, Lucide, Heroicons, Tabler and Material Symbols among them, as SVG or a React component in one command.
- Stripe, Linear, Apple and 497 more: a brand's colors, typography and components in one file your AI agent builds from.
- Restyle every component and block at once: 8 styles, 8 grays, 18 colors and 5 radii, shared as a shadcn preset code.
- Priority requests are answered first.
Individual
For personal projects & open source
$32instead of $49/mo
$389 billed yearly
- Seats: 1 seat
- Commercial use: Personal & open source only
- Blocks: All 6,181 blocks
- Templates: All 14 templates
- MCP server: 38 AI clients
- Animated buttons: All 35 buttons
- Text effects: All 97 effects
- Backgrounds: All 100 backgrounds
- Shaders: All 100 shaders
- Frameworks: React, Vue, Svelte, Solid
- UI libraries: Base UI, Radix, Aria, Ark
- Components: All 174 components
- Examples: All 1,103 examples
- Charts: All 70 charts
- React hooks: All 35 hooks
- Icons: 294k+ icons
- DESIGN.md files: All 500 brands
- Theme builder: 8 styles × 18 colors
- Support: Standard
Team
Most popularFor freelancers, agencies & startups
$66instead of $99/mo
$789 billed yearly · ≈ $13/dev/mo
- Seats: Up to 5 seats
- Commercial use: Included
- Blocks: All 6,181 blocks
- Templates: All 14 templates
- MCP server: 38 AI clients
- Animated buttons: All 35 buttons
- Text effects: All 97 effects
- Backgrounds: All 100 backgrounds
- Shaders: All 100 shaders
- Frameworks: React, Vue, Svelte, Solid
- UI libraries: Base UI, Radix, Aria, Ark
- Components: All 174 components
- Examples: All 1,103 examples
- Charts: All 70 charts
- React hooks: All 35 hooks
- Icons: 294k+ icons
- DESIGN.md files: All 500 brands
- Theme builder: 8 styles × 18 colors
- Support: Priority
Organization
For companies with larger teams
$132instead of $199/mo
$1,589 billed yearly
- Seats: Unlimited seats
- Commercial use: Included
- Blocks: All 6,181 blocks
- Templates: All 14 templates
- MCP server: 38 AI clients
- Animated buttons: All 35 buttons
- Text effects: All 97 effects
- Backgrounds: All 100 backgrounds
- Shaders: All 100 shaders
- Frameworks: React, Vue, Svelte, Solid
- UI libraries: Base UI, Radix, Aria, Ark
- Components: All 174 components
- Examples: All 1,103 examples
- Charts: All 70 charts
- React hooks: All 35 hooks
- Icons: 294k+ icons
- DESIGN.md files: All 500 brands
- Theme builder: 8 styles × 18 colors
- Support: Priority
Billed once a year in USD. Cancel anytime.
Individual
For personal projects & open source
$32instead of $49/mo
$389 billed yearly
- How many people can use the license.Seats: 1 seat
- Client work, SaaS products and anything you charge for.Commercial use: Personal & open source only
- Page sections in 56 categories, from heroes and pricing tables to dashboards and settings, on every framework and UI library, in your theme.Blocks: All 6,181 blocks
- Complete Next.js sites for startups, SaaS, agencies and portfolios, every page designed, ready to ship.Templates: All 14 templates
- Your AI agent searches, previews and installs any component, block, icon or DESIGN.md from a prompt: 22 tools in Claude Code, Cursor, VS Code and 35 more clients.MCP server: 38 AI clients
- Buttons with motion and states of their own, from an arrow that slides in to a burst of confetti.Animated buttons: All 35 buttons
- Typewriters, scrambles, counters and more, for headlines, labels and numbers.Text effects: All 97 effects
- Animated backgrounds for heroes, sections and cards, from a soft aurora to a flock that flees the cursor. Most are pure CSS.Backgrounds: All 100 backgrounds
- WebGPU shaders, from a slow aurora to a black hole, each drawing only while it's on screen.Shaders: All 100 shaders
- One design and one theme on all four: the components, blocks and effects are built for each framework.Frameworks: React, Vue, Svelte, Solid
- React on Base UI, Radix UI, React Aria or Ark UI: install the version for the library your project already uses. Vue, Svelte and Solid run on Ark UI.UI libraries: Base UI, Radix, Aria, Ark
- From a button to a date picker, a color picker or a guided tour: accessible, typed in TypeScript, each with live demos.Components: All 174 components
- Real-world patterns built from the components, in 53 galleries: forms, tables, menus, dialogs and more.Examples: All 1,103 examples
- Area, bar, line, pie, radar and radial charts on TanStack Charts, on every framework. React also gets the Recharts originals.Charts: All 70 charts
- Debounce, local storage, media queries and more: each hook is one typed file you own.React hooks: All 35 hooks
- From 222 libraries, Lucide, Heroicons, Tabler and Material Symbols among them, as SVG or a React component in one command.Icons: 294k+ icons
- Stripe, Linear, Apple and 497 more: a brand's colors, typography and components in one file your AI agent builds from.DESIGN.md files: All 500 brands
- Restyle every component and block at once: 8 styles, 8 grays, 18 colors and 5 radii, shared as a shadcn preset code.Theme builder: 8 styles × 18 colors
- Priority requests are answered first.Support: Standard
Team
Most popularFor freelancers, agencies & startups
$66instead of $99/mo
$789 billed yearly · ≈ $13/dev/mo
Everything in Individual, plus
- How many people can use the license.Seats: Up to 5 seats
- Client work, SaaS products and anything you charge for.Commercial use: Included
- Priority requests are answered first.Support: Priority
Organization
For companies with larger teams
$132instead of $199/mo
$1,589 billed yearly
Everything in Team, plus
- How many people can use the license.Seats: Unlimited seats
- Secure checkout via Stripe
- Code lives in your repo
- Keep what you've shipped if you cancel
- License terms
4.9 out of 5 from 150+ developers
Your system, built for you
Every block, template and icon, installed by your AI agent in your design system. The DESIGN.md files stay free.
- Cancel anytime
- Keep what you've shipped