Editorialsaasdarkminimal

Graphite

A dark steel admin theme: tight radii, industrial greys, and a cool primary for high-density operator dashboards.

by PromptsRush· MIT· v1.0.0· shadcn, tailwind, css-vars
Download design.md
Lumen
Get started
✦ New release

Build something people love.

A live preview of this theme — every color, font, radius, and shadow you see is rendered straight from its tokens.

Start free Live demo
12.4k
Active users+18%
$48.2k
Revenue+7.1%
4.9
Rating2.1k
Quick actions
Prov2.0
Search anything…
CreateInvite

Color system

Click any swatch to copy. Contrast graded against WCAG.

Contrast (WCAG)AAA ≥ 7 · AA ≥ 4.5
AaBody text
14.63:1AAA
AaMuted text
4.76:1AA
AaPrimary button
10.35:1AAA
AaCard text
14.63:1AAA
AaAccent
11.87:1AAA

Typography

5xl3remDesign with intent
4xl2.25remDesign with intent
3xl1.875remDesign with intent
2xl1.5remDesign with intent
xl1.25remThe quick brown fox jumps over the lazy dog
lg1.125remThe quick brown fox jumps over the lazy dog
base1remThe quick brown fox jumps over the lazy dog
sm0.875remThe quick brown fox jumps over the lazy dog
xs0.75remThe quick brown fox jumps over the lazy dog

Body sample. Inter carries running text — readable paragraphs, comfortable measure, and a rhythm that holds up across long pages of content and UI.

Radius, shadow & fonts

Radius · base 0.375rem
sm
base
lg
xl
Shadow
sm
md
lg
Fonts
Sans
Inter
Aa Bb Cc 0123
Mono
IBM Plex Mono
Aa Bb Cc 0123

Components

Real UI rendered with this theme's tokens.

Buttons
PrimarySecondaryOutlineAccentGhostDelete
Badges
PrimarySecondaryAccent
Input
you@example.com
Card title

A surface for grouping content, with the theme's border, radius, and shadow.

Accent callout
Use the accent surface for highlights, tips, and gentle emphasis.

Principles, guidelines & component specs

Do's & don'ts, spacing, motion, iconography, accessibility, and exact component specs — all in the design.md too.

Do

  • Pack information densely with clear borders and small radii.
  • Use the steel primary only for the few real actions.

Don't

  • Don't soften the UI with big radii or warm tints.
  • Don't animate slowly — operators want instant feedback.
Spacing · base 0.25rem
1
2
3
4
6
8
12
16
24
32
48
Motion
fast · 120msbase · 200msslow · 320ms
ease · cubic-bezier(0.4,0,0.2,1)
  • Keep motion fast and mechanical; this is an instrument panel.
Easing & duration (hover)

Hover to feel this theme's base transition.

Iconography

Lucide · 1.75px stroke · 0.9rem. Outline icons with a consistent stroke width; size icons to match adjacent text and align them optically.

Accessibility
Contrast
WCAG AA — 4.5:1 text, 3:1 UI
Focus
2px solid var(--ring), 1px offset
Targets
40x40px
  • Never use color as the only signal — pair it with text, an icon, or a shape.
  • Every interactive element must be keyboard reachable and show a visible focus ring.
  • Honor prefers-reduced-motion: reduce by disabling non-essential animation.
  • Keep a logical heading order and give every form control a label.
Component specs
Button
Backgroundvar(--primary)
Textvar(--primary-foreground)
Radius0.375rem
Padding0 0.85rem
Height2.25rem
Weight600
Badge
Backgroundvar(--accent) / var(--primary)
Textvar(--accent-foreground) / var(--primary-foreground)
Radius0.25rem
Padding0.15rem 0.55rem
Font size0.7rem
Weight600

Use for status, counts, and short labels. Keep to one or two words.

Alert
Radius0.563rem
Padding1rem 1.25rem
Border1px solid var(--border)

Always pair the color with an icon and a text label — never rely on color alone.

Form field
Backgroundvar(--background)
Border1px solid var(--input)
Radius0.375rem
Height2.25rem
Padding0.5rem 0.75rem

Label sits above the field; helper or error text sits below.

Card
Backgroundvar(--card)
Textvar(--card-foreground)
Border1px solid var(--border)
Radius0.5rem
Padding1rem
Shadow0 6px 16px -6px rgba(0,0,0,0.30)

The design brief

Graphite is an industrial, dark-first design system for operator consoles, infra dashboards, and dense control panels. Tight radii and cool steel greys keep a lot of information readable and serious.

Principles

  • Density over decoration — small radii, compact controls, clear borders.
  • Cool steel neutrals reduce glare in long monitoring sessions.
  • One cool primary marks the few actions that matter.

When to use

Use Graphite for DevOps dashboards, network/infra consoles, and trading-style UIs. Avoid it for friendly consumer or marketing surfaces.

Signature details

  • Steel #334155 primary; 0.375rem radius for an engineered look.
  • Inter + IBM Plex Mono for logs and metrics.

Use this with your AI

Download or copy the design.md and paste it into Claude, Cursor, or v0 — it tells the agent exactly which colors, fonts, radii, and shadows to use, so your site comes out looking like this.

Export tokens

Drop straight into your codebase.

:root {
  --radius: 0.375rem;
  --background: #ffffff;
  --foreground: #1e293b;
  --card: #ffffff;
  --card-foreground: #1e293b;
  --popover: #ffffff;
  --popover-foreground: #1e293b;
  --primary: #334155;
  --primary-foreground: #ffffff;
  --secondary: #f1f5f9;
  --secondary-foreground: #1e293b;
  --muted: #f1f5f9;
  --muted-foreground: #64748b;
  --accent: #e2e8f0;
  --accent-foreground: #1e293b;
  --destructive: #dc2626;
  --destructive-foreground: #ffffff;
  --border: #e2e8f0;
  --input: #e2e8f0;
  --ring: #334155;
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.10);
  --shadow-md: 0 6px 16px -6px rgba(0,0,0,0.30);
  --shadow-lg: 0 18px 40px -12px rgba(0,0,0,0.45);
  --font-sans: 'Inter', ui-sans-serif, system-ui, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, monospace;
  --ease-standard: cubic-bezier(0.4,0,0.2,1);
  --ease-emphasized: cubic-bezier(0.16,1,0.3,1);
  --duration-base: 200ms;
}

.dark {
  --background: #0c0d10;
  --foreground: #e4e7eb;
  --card: #15171c;
  --card-foreground: #e4e7eb;
  --popover: #15171c;
  --popover-foreground: #e4e7eb;
  --primary: #cbd5e1;
  --primary-foreground: #0f172a;
  --secondary: #1c1f26;
  --secondary-foreground: #e4e7eb;
  --muted: #1c1f26;
  --muted-foreground: #9aa3b2;
  --accent: #262a33;
  --accent-foreground: #e4e7eb;
  --destructive: #f87171;
  --destructive-foreground: #450a0a;
  --border: #262a33;
  --input: #262a33;
  --ring: #cbd5e1;
}