BrandToPrompt

Cloudflare DNS Design System: Minimalist Tech Clarity

Visit Site

Explore Cloudflare DNS's design system - colors, typography, spacing, and components. Build fast, secure, and clear interfaces.

5 min read951 words

Brand Identity

Color Palette

Primary
Secondary

Typography

Primary Font
Open Sans
Secondary Font
Helvetica

Design Style

Style
minimalist, flat tech aesthetic with high contrast and approachable accents
Visual Density
precise 8px grid with defined breakpoints and generous white backgrounds
Border Style
mixed: 0px flat edges, 3px small rounding, 40px pill-like, 224px extreme pill buttons, 50% circles

Full Analysis

Cloudflare DNS — Design System Deep Dive

1. Brand Overview

Cloudflare DNS’s design language is utilitarian tech with a hint of playfulness. The site at https://one.one.one.one/dns/ is aimed at a broad audience — from developers who care about DNS speed and privacy to everyday users who just want a faster, safer internet connection.

The vibe: clean, high-contrast, and functional. There’s no overuse of gradients or ornamental elements. Instead, they rely on a crisp color palette and a highly legible type system to convey trust and clarity. This is a product that wants to feel fast, secure, and modern — without the intimidating complexity that DNS often carries.

The design philosophy leans on minimalism but keeps it approachable. White is the dominant background, giving a sense of openness and neutrality, while accents in bright tech blues (#0000ee) and brand-specific purples, oranges, and greens inject life. The use of Open Sans throughout reinforces clarity and legibility — it’s a workhorse font for digital products.

Navigation and component styles show restraint. Buttons are flat, relying on color changes and subtle transforms for interaction feedback. Shadows are rare — you’ll see one soft shadow (rgb(204, 204, 204) 0px 3px 4px) used sparingly. This signals a preference for a flat, content-first interface.

Breakpoints range from 375px to 1200px, showing a tightly controlled responsive strategy. This isn’t a fluid, experimental layout — it’s precise, with clearly defined steps for mobile, tablet, and desktop.

Overall, Cloudflare DNS’s brand system is about trust through clarity. Minimal ornamentation, strict palette control, and functional typography make it feel like an infrastructure product that’s accessible to non-experts. It’s a tech-first aesthetic but softened just enough to be welcoming.


2. Color System

2.1 Primary Colors

Primary is rgb(255, 255, 255) (#ffffff) — white. That’s unusual for a “primary” designation, but on this site, white is the main canvas. Interactive elements lean heavily on deep blue (#0000ee) for links and accents. This choice signals “tech” and “trust” — blue is common in internet infrastructure (think IBM, Intel, Microsoft). Compared to competitors like Google Public DNS, which use more brand-heavy colors, Cloudflare DNS keeps the main UI neutral.

Secondary is transparent (rgba(0,0,0,0)), which means secondary areas inherit context colors — there’s no fixed secondary brand color.

2.2 Complete Palette

Color NameHexRoleUsage
Deep Blue#0000eeAccent, link colorLinks, interactive text
White#ffffffPrimary backgroundPage backgrounds, button surfaces
Deep Indigo#221e68Accent/dark backgroundPossibly hero or section backgrounds
Dark Gray#414142Logo neutralCloudflare logo neutral
Light Purple Overlay#413680Hover/focus accentHover/focus background for nav items
Brand Accent Orange#f69259AccentBrand highlight, possibly icons
Header Text Color#333333TextHeader typography
Brand Accent Purple 2#ba77b1AccentDecorative accents
Brand Accent Yellow#ffdb6fAccentIcons, highlights
Button Blue#2c7cb0ButtonSecondary button background
Brand Accent Blue#408bc9AccentLinks, icons
Accent Color#348af0AccentPrimary actions
Input Placeholderrgba(94,120,146,.5)UI neutralPlaceholder text
Dark Green#1c422bAccentStatus indicators
Input Backgroundrgba(135,159,183,.15)UI neutralInput fields
Red Accent#f16975AccentAlerts, errors
Accent Text Blue#0069e4Accent textLinks, emphasis text
Green Accent#65cc9aAccentSuccess indicators
Background White#ffffffBackgroundGlobal background
Text Black#000000TextBody text
Nav Link Active BGrgba(65,54,128,.1)Active stateNavigation active indicator
Button Hover Blue#276d9bHover stateButton hover
Mid Red Accent#f3bac3AccentSoft alert background
Purple Accent 1#8176b5AccentDecorative accents
Mobile Section Shadowrgba(0,0,0,.08)ShadowMobile section separators
Border Gray#a9a9a9BorderDividers
Dark Red Accent#711423AccentAlerts
Light Green Accent#eff8f3Accent backgroundSuccess backgrounds
Light Red Accent#fcf0f2Accent backgroundError backgrounds
Light Blue Accent#76c4e2Accent backgroundInfo backgrounds
Input Border Colorrgba(66,89,111,.15)UI neutralInput fields
Mid Green Accent#b0ddc2AccentSuccess secondary

2.3 Color Relationships

White (#ffffff) background against deep blue (#0000ee) links gives excellent contrast (WCAG AAA). Black text (#000000) on white is perfect for readability. Accent colors like #348af0 also have strong contrast against white, but some softer accents (like #f3bac3) are more decorative and shouldn’t be used for text.

Dark backgrounds like #221e68 with white text also pass contrast easily. Transparent secondary colors mean context is king — you must ensure background contrast manually.

2.4 Usage Guide

  • Use deep blue (#0000ee) for links and interactive text.
  • Keep white (#ffffff) as the main background — it’s the canvas.
  • Accent colors (#f69259, #ba77b1, #65cc9a, etc.) should be sparingly used for highlights or status indicators.
  • Avoid using soft accent backgrounds (#f3bac3, #eff8f3) for text — they’re for context panels.
  • Maintain strong contrast for accessibility; don’t overlay light text on light backgrounds without a darker backdrop.

3. Typography

3.1 Font Families

Primary font is Open Sans, with fallbacks to Helvetica and Arial. Source: Google Fonts. No Adobe or variable fonts.

3.2 Type Scale

ElementFontSize (px/rem)WeightLine Height
H1Open Sans40px / 2.505001.40
H1Open Sans36px / 2.255001.00
H1Open Sans30px / 1.884001.40
H1Open Sans26px / 1.634001.20
H1Open Sans25px / 1.563001.40
LinkOpen Sans22px / 1.386001.40
LinkOpen Sans20px / 1.253001.40
H1Open Sans20px / 1.253001.40
ButtonOpen Sans20px / 1.253001.40
H1Open Sans20px / 1.254001.40
LinkOpen Sans20px / 1.254001.40
LinkHelvetica19px / 1.195001.40
H1Open Sans19px / 1.194001.40
LinkOpen Sans19px / 1.194001.40
ButtonOpen Sans17px / 1.066001.40
H1Open Sans17px / 1.066001.40
ButtonOpen Sans16px / 1.003001.40
H1Open Sans16px / 1.003001.40
LinkOpen Sans16px / 1.003001.70
H1Open Sans16px / 1.004001.60
LinkOpen Sans16px / 1.004001.40
CaptionOpen Sans12px / 0.754001.40

3.3 Hierarchy

They use multiple size variants for H1, which probably adjust per breakpoint. The smallest heading is still 16px, meaning headings remain readable even on mobile. Links get special treatment with uppercase and letter spacing in some contexts (4.4px). Buttons mostly use 17px or 20px, keeping tap targets readable.


4. Spacing & Layout

4.1 Spacing Scale

8px base grid. Common values:

pxremCountUse Case
30.193Tight icon spacing
3.20.202Minor micro-adjustments
40.254Small gaps
50.314Button padding
5.10.3212Button padding
80.503Small gaps
100.6337Default UI spacing
120.752Input padding
14.40.902Line spacing adjustments
161.001Text block padding
201.254Card padding
251.562Section gaps
271.692Section gaps
402.504Large section padding
503.132Hero spacing
603.751Hero spacing
805.001Page section
1006.2513Major vertical spacing
346.521.661Special layout element

4.2 Layout

Breakpoints: 375px, 525px, 576px, 650px, 768px, 769px, 920px, 1080px, 1200px. That’s a lot — meaning they fine-tune layout shifts. Likely max content width around 1200px.


5. Visual Elements

Border Radius

ValueCountElementsNotes
0pxFlat edges
3px2div, pSmall rounding
40px3divLarge pill-like
224px1buttonExtreme pill
50%3buttonPerfect circle

Shadows

Only one: rgb(204, 204, 204) 0px 3px 4px 0px — soft, light shadow.

Borders

Minimal. Example: 1px solid rgb(196, 215, 238) top border on section.


6. Components

6.1 Buttons

Button choice (default)

  • Background: transparent
  • Color: black
  • Padding: 5.1px 10.2px
  • Border radius: 0px
  • Border: 3px solid transparent
  • Hover: background var(--selection-background-color), translate Y -1px
  • Active: background rgba(0,0,0,0.2), translate Y +1px

Button choice selected

  • Background: black
  • Color: white
  • Same padding/border as above
  • Hover/active similar to default

Share button

  • Background: white
  • Color: black
  • Padding: 0
  • Border radius: 50%
  • Hover: adds inset shadows

Three styles:

  • White text, underline
  • Deep blue (#0000ee), underline
  • Black text, underline

No hover color changes.

6.3 Forms

No custom input data in extracted set — probably minimal styling with placeholder color rgba(94,120,146,.5), border rgba(66,89,111,.15).


7. Design Tokens

:root {
  /* Colors */
  --brand-accent-orange: #f69259;
  --header-color: #333333;
  --brand-accent-purple2: #ba77b1;
  --brand-accent-yellow: #ffdb6f;
  --button-color: #2c7cb0;
  --brand-accent-blue: #408bc9;
  --accent-color: #348af0;
  --input-placeholder-color: rgba(94,120,146,.5);
  --brand-accent-dark-green: #1c422b;
  --input-background-color: rgba(135,159,183,.15);
  --brand-accent-red: #f16975;
  --accent-text-color: #0069e4;
  --brand-accent-green: #65cc9a;
  --bg-background-color: #ffffff;
  --text-color: #000000;
  --nav-link-background-color-active: rgba(65,54,128,.1);
  --button-hover-color: #276d9b;
  --brand-accent-mid-red: #f3bac3;
  --brand-accent-purple1: #8176b5;
  --mobile-content-section-shadow-color: rgba(0,0,0,.08);
  --border-color: #a9a9a9;
  --brand-accent-dark-red: #711423;
  --brand-accent-light-green: #eff8f3;
  --brand-accent-light-red: #fcf0f2;
  --brand-accent-light-blue: #76c4e2;
  --input-border-color: rgba(66,89,111,.15);
  --brand-accent-mid-green: #b0ddc2;

  /* Typography */
  --font-primary: 'Open Sans', Helvetica, Arial;

  /* Spacing */
  --space-3: 3px;
  --space-3_2: 3.2px;
  --space-4: 4px;
  --space-5: 5px;
  --space-5_1: 5.1px;
  --space-8: 8px;
  --space-10: 10px;
  --space-12: 12px;
  --space-14_4: 14.4px;
  --space-16: 16px;
  --space-20: 20px;
  --space-25: 25px;
  --space-27: 27px;
  --space-40: 40px;
  --space-50: 50px;
  --space-60: 60px;
  --space-80: 80px;
  --space-100: 100px;
  --space-346_5: 346.5px;

  /* Radius */
  --radius-sm: 3px;
  --radius-lg: 40px;
  --radius-pill: 224px;
  --radius-full: 50%;

  /* Shadows */
  --shadow-soft: rgb(204, 204, 204) 0px 3px 4px 0px;
}

8. AI Coding Assistant Prompt

# Cloudflare DNS Design System Specification

System Prompt:
You are a Cloudflare DNS design expert. Build UIs matching their visual language exactly.

Brand Context:
Cloudflare DNS values clarity, speed, and trust. The design is minimal, flat, and highly legible, with a restrained palette and functional typography. Components are precise and responsive, avoiding unnecessary decoration.

Color Palette:
- Deep Blue: #0000ee — Links, interactive text
- White: #ffffff — Backgrounds, button surfaces
- Deep Indigo: #221e68 — Section backgrounds
- Dark Gray: #414142 — Logo neutral
- Light Purple Overlay: #413680 — Hover/focus backgrounds
- Brand Accent Orange: #f69259 — Highlights, icons
- Header Text: #333333 — Headings
- Brand Accent Purple2: #ba77b1 — Decorative accents
- Brand Accent Yellow: #ffdb6f — Icons, highlights
- Button Blue: #2c7cb0 — Secondary buttons
- Brand Accent Blue: #408bc9 — Links, icons
- Accent Blue: #348af0 — Primary actions
- Placeholder: rgba(94,120,146,.5) — Input placeholder
- Dark Green: #1c422b — Status indicators
- Input Background: rgba(135,159,183,.15) — Input fields
- Red Accent: #f16975 — Errors
- Accent Text Blue: #0069e4 — Emphasis text
- Green Accent: #65cc9a — Success
- Nav Active BG: rgba(65,54,128,.1) — Active nav item
- Button Hover Blue: #276d9b — Button hover
- Mid Red Accent: #f3bac3 — Soft alert background
- Purple Accent1: #8176b5 — Decorative accents
- Mobile Section Shadow: rgba(0,0,0,.08) — Section separators
- Border Gray: #a9a9a9 — Dividers
- Dark Red Accent: #711423 — Alerts
- Light Green Accent: #eff8f3 — Success backgrounds
- Light Red Accent: #fcf0f2 — Error backgrounds
- Light Blue Accent: #76c4e2 — Info backgrounds
- Input Border: rgba(66,89,111,.15) — Input borders
- Mid Green Accent: #b0ddc2 — Success secondary

Typography:
Font Family: 'Open Sans', Helvetica, Arial — from Google Fonts
Sizes & Weights:
| Element | Size | Weight | Line Height | Use Case |
| H1 | 40px | 500 | 1.4 | Page titles |
| H1 | 36px | 500 | 1.0 | Hero titles |
| H1 | 30px | 400 | 1.4 | Section headings |
| ... (include all from table above) ...

Spacing & Grid:
Base: 8px grid
Tokens: 3px, 3.2px, 4px, 5px, 5.1px, 8px, 10px, 12px, 14.4px, 16px, 20px, 25px, 27px, 40px, 50px, 60px, 80px, 100px, 346.5px
Use: Button padding (5.1px), card padding (20px), section gaps (25px+)

Border Radius:
- none: 0 — nav links
- sm: 3px — inputs
- lg: 40px — pill-like divs
- pill: 224px — extreme pill buttons
- full: 50% — circular buttons

Shadows & Depth:
Soft shadow: rgb(204, 204, 204) 0px 3px 4px — used sparingly
Otherwise flat design — rely on borders

Component Specifications:

Primary Button:
Default: background transparent, color #000000, padding 5.1px 10.2px, border-radius 0px, border 3px solid transparent
Hover: background var(--selection-background-color), transform translateY(-1px)
Active: background rgba(0,0,0,0.2), transform translateY(1px)
Focus: outline none

Secondary Button:
Default: background #000000, color #ffffff, same padding/border
Hover/Active: same as primary

Share Button:
Background #ffffff, color #000000, padding 0, border-radius 50%
Hover: inset shadows

Links:
White / deep blue / black text, underline, no hover change

Input Fields:
Background rgba(135,159,183,.15)
Border rgba(66,89,111,.15)
Placeholder rgba(94,120,146,.5)

Layout & Responsive Rules:
Max width: 1200px
Breakpoints: 375px, 525px, 576px, 650px, 768px, 769px, 920px, 1080px, 1200px

Interaction Rules:
Transitions: 150ms ease for state changes
Focus: outline none for buttons, rely on background change
Hover: slight translateY for buttons

DO:
- Use exact hex values from palette
- Maintain 8px grid
- Keep buttons flat — no heavy shadows
- Use Open Sans everywhere
- Ensure WCAG AA contrast

DON'T:
- Invent new colors
- Mix rounded and square corners inconsistently
- Use gradients
- Apply drop shadows to text

Code Examples:

```css
.btn-primary {
  background: transparent;
  color: #000000;
  padding: 5.1px 10.2px;
  border-radius: 0;
  border: 3px solid transparent;
  font-weight: 600;
  font-size: 17px;
  transition: background 150ms ease, transform 150ms ease;
}
.btn-primary:hover {
  background: var(--selection-background-color);
  transform: translateY(-1px);
}
.btn-primary:active {
  background: rgba(0,0,0,0.2);
  transform: translateY(1px);
}

.card {
  background: #ffffff;
  border-radius: 3px;
  padding: 20px;
  box-shadow: var(--shadow-soft);
}

.input {
  border: 1px solid rgba(66,89,111,.15);
  border-radius: 3px;
  padding: 12px;
  font-size: 16px;
  background: rgba(135,159,183,.15);
}
.input::placeholder {
  color: rgba(94,120,146,.5);
}
```

9. Summary

TL;DR — Cloudflare DNS’s design system is flat, precise, and color-controlled. White dominates, blue signals interaction, and Open Sans keeps everything readable. The 8px grid and strict breakpoints make it predictable for developers.

Brand Keywords:

  • tech-minimalist
  • high-contrast
  • trust-first
  • flat-interface
  • developer-friendly