← Back
Best viewed on a desktop. Please switch to a larger device.
Style 14 / 30 Dark Mode

Dark
Mode
Minimal

Near-black backgrounds with precise typographic hierarchy and maximum restraint. No decoration — only information, rendered in the most legible, comfortable form possible.

0A0A0A
Background
1px
Border width
No decoration. Only information.
// Principle 01
Near-black, not pure black
#0A0A0A reduces eye strain vs true #000000
// Principle 02
Three text levels only
Primary · Secondary · Disabled — no more
// Principle 03
1px borders define space
Colour fills are avoided — structure emerges from line
// Principle 04
Accent only where essential
Blue for interactive · Green for success · Red for error
01

Tonal Scale

Eight steps from near-black to near-white. Every level earns its place in the hierarchy.

Background
#0A0A0A
Page base
Surface
#111111
Cards, panels
Raised
#1A1A1A
Hover states
Border
#2A2A2A
Dividers
Disabled
#666666
Muted text
Secondary
#A0A0A0
Body text
Primary
#E8E8E8
Headlines
Accent
#FFFFFF
CTA, emphasis
02

Status Colours

Four semantic colours — used sparingly, never decoratively. They carry meaning, not aesthetics.

Interactive Blue
#3B82F6
Links, buttons, focus rings
Success Green
#22C55E
Confirmations, online status
Warning Amber
#F59E0B
Caution, pending states
Error Red
#EF4444
Errors, destructive actions
03

Type Scale

Inter for UI. JetBrains Mono for data, labels, and code. Hierarchy through weight and opacity — never colour.

Display Dark Minimal 56px · Inter 300
−0.03em tracking
H1 System Overview 36px · Inter 400
H2 Section Heading 22px · Inter 500
Mono / Label STATUS :: ONLINE · BUILD 4.2.1 12px · JetBrains Mono
+0.08em tracking
Body Body copy in Inter Light — low weight reduces visual noise on dark backgrounds. The slight reduction in contrast from white to #E8E8E8 cuts eye strain over long reading sessions. 15px · Inter 300
1.8 line-height
04

UI Components

Buttons
Form Fields
Toggles & Progress
Progress
Storage 72%
Build 89%
Tests 100%
Errors 3%
05

Navigation

06

Cards

Border-defined, no shadows. Hover states use the next step up the tonal scale — no glow, no lift.

01 — Featured

The Quiet Interface

When every pixel serves a function, there is nothing left to remove. The interface disappears and leaves only the work.

Design · 2026
02 — Essay

Reducing Visual Noise

Dark mode is not merely an aesthetic preference — it is a physiological one. Lower luminance reduces eye strain over extended sessions.

Research · 2025
03 — Reference

The 8px Grid

Consistent spacing on an 8px base grid creates visual rhythm without any additional design work. The system does the heavy lifting.

Systems · 2025
04 — Pattern

Border as Language

1px borders in a dark system carry the entire weight of spatial organisation. Width, opacity, and colour define every relationship.

Patterns · 2024
05 — Typography

Weight over Colour

In a monochrome system, typographic hierarchy is achieved through weight and opacity — never through hue. Inter 300 to 600 is sufficient.

Type · 2024
06 — Tooling

Dark Mode by Default

Designing dark-first changes the process: you work with subtraction, not addition. You add light rather than add shadow.

Process · 2024
07

Full Layout

All systems nominal
Overview
Projects
Deployments
⚠ 2 Warnings
Settings

Overview

4,821
Requests
↑ 12%
$48k
Revenue
↑ 8%
99.9%
Uptime
Nominal
1.4ms
Latency
↓ Fast

Request volume · 7d

08

Core Principles

01 · Tone

Near-Black Surfaces

Pure black (#000) creates harsh contrast and visible OLED burn risk. #0A0A0A or #111111 softens edges and allows borders to read cleanly.

02 · Hierarchy

Three Text Levels

Primary (#E8E8E8) · Secondary (#A0A0A0) · Disabled (#666666). Never more. Colour is reserved for semantic states only — not decoration.

03 · Space

Borders, Not Fills

In a dark system, background fills compete with the content. 1px borders on #2A2A2A define space without adding visual weight or distraction.

04 · Accent

Semantic Colour Only

Colour carries meaning, not mood. Blue = interactive. Green = success. Amber = caution. Red = error. Everything else is greyscale.