← all systems hashicorp
edit →

Design System Inspired by HashiCorp

1. Visual Theme & Atmosphere

HashiCorp’s website is enterprise infrastructure made tangible — a design system that must communicate the complexity of cloud infrastructure management while remaining approachable. The visual language splits between two modes: a clean white light-mode for informational sections and a dramatic dark-mode (#15181e, #0d0e12) for hero areas and product showcases, creating a day/night duality that mirrors the “build in light, deploy in dark” developer workflow.

The typography is anchored by a custom brand font (HashiCorp Sans, loaded as __hashicorpSans_96f0ca) that carries substantial weight — literally. Headings use 600–700 weights with tight line-heights (1.17–1.19), creating dense, authoritative text blocks that communicate enterprise confidence. The hero headline at 82px weight 600 with OpenType "kern" enabled is not decorative — it’s infrastructure-grade typography.

What distinguishes HashiCorp is its multi-product color system. Each product in the portfolio has its own brand color — Terraform purple (#7b42bc), Vault yellow (#ffcf25), Waypoint teal (#14c6cb), Vagrant blue (#1868f2) — and these colors appear throughout as accent tokens via a CSS custom property system (--mds-color-*). This creates a design system within a design system: the parent brand is black-and-white with blue accents, while each child product injects its own chromatic identity.

The component system uses the mds (Markdown Design System) prefix, indicating a systematic, token-driven approach where colors, spacing, and states are all managed through CSS variables. Shadows are remarkably subtle — dual-layer micro-shadows using rgba(97, 104, 117, 0.05) that are nearly invisible but provide just enough depth to separate interactive surfaces from the background.

Key Characteristics:

2. Color Palette & Roles

Brand Primary

Neutral Scale

Product Brand Colors

Semantic Colors

Shadows

3. Typography Rules

Font Families

Hierarchy

RoleFontSizeWeightLine HeightLetter SpacingNotes
Display HeroHashiCorp Sans82px (5.13rem)6001.17 (tight)normal"kern" enabled
Section HeadingHashiCorp Sans52px (3.25rem)6001.19 (tight)normal"kern" enabled
Feature HeadingHashiCorp Sans42px (2.63rem)7001.19 (tight)-0.42pxNegative tracking
Sub-headingHashiCorp Sans34px (2.13rem)600–7001.18 (tight)normalFeature blocks
Card TitleHashiCorp Sans26px (1.63rem)7001.19 (tight)normalCard and panel headings
Small TitleHashiCorp Sans19px (1.19rem)7001.21 (tight)normalCompact headings
Body EmphasisHashiCorp Sans17px (1.06rem)600–7001.18–1.35normalBold body text
Body Largesystem-ui20px (1.25rem)400–6001.50normalHero descriptions
Bodysystem-ui16px (1.00rem)400–5001.63–1.69 (relaxed)normalStandard body text
Nav Linksystem-ui15px (0.94rem)5001.60 (relaxed)normalNavigation items
Small Bodysystem-ui14px (0.88rem)400–5001.29–1.71normalSecondary content
Captionsystem-ui13px (0.81rem)400–5001.23–1.69normalMetadata, footer links
Uppercase LabelHashiCorp Sans13px (0.81rem)6001.69 (relaxed)1.3pxtext-transform: uppercase

Principles

4. Component Stylings

Buttons

Primary Dark

Secondary White

Product-Colored Buttons

Badges / Pills

Inputs

Text Input (Dark Mode)

Checkbox

Cards & Containers

5. Layout Principles

Spacing System

Grid & Container

Breakpoints

NameWidthKey Changes
Mobile Small<375pxTight single column
Mobile375–480pxStandard mobile
Small Tablet480–600pxMinor adjustments
Tablet600–768px2-column grids begin
Small Desktop768–992pxFull nav visible
Desktop992–1120pxStandard layout
Large Desktop1120–1440pxMax-width content
Ultra-wide>1440pxCentered, generous margins

Whitespace Philosophy

Border Radius Scale

6. Depth & Elevation

LevelTreatmentUse
Flat (Level 0)No shadowDefault surfaces, text blocks
Whisper (Level 1)rgba(97, 104, 117, 0.05) 0px 1px 1px, rgba(97, 104, 117, 0.05) 0px 2px 2pxCards, buttons, interactive surfaces
Focus (Level 2)3px solid var(--mds-color-focus-action-external) outlineFocus rings — color-matched to context

Shadow Philosophy: HashiCorp uses arguably the subtlest shadow system in modern web design. The dual-layer shadows at 5% opacity are nearly invisible — they exist not to create visual depth but to signal interactivity. If you can see the shadow, it’s too strong. This restraint communicates the enterprise value of stability — nothing floats, nothing is uncertain.

7. Do’s and Don’ts

Do

Don’t

8. Responsive Behavior

Breakpoints

NameWidthKey Changes
Mobile<768pxSingle column, hamburger nav, stacked CTAs
Tablet768–992px2-column grids, nav begins expanding
Desktop992–1150pxFull layout, mega-menu nav
Large>1150pxMax-width centered, generous margins

Collapsing Strategy

9. Agent Prompt Guide

Quick Color Reference

Example Component Prompts

Iteration Guide

  1. Always start with the mode decision: light (white) for informational, dark (#15181e) for hero/product
  2. HashiCorp Sans for headings only (17px+), system-ui for everything else
  3. Shadows are at whisper level (0.05 opacity) — if visible, reduce
  4. Product colors are sacred — each product owns exactly one color
  5. Focus rings are always 3px solid, color-matched to product context
  6. Uppercase labels are the systematic wayfinding pattern — 13px, 600, 1.3px tracking