← all systems ibm
edit →

Design System Inspired by IBM

1. Visual Theme & Atmosphere

IBM’s website is the digital embodiment of enterprise authority built on the Carbon Design System — a design language so methodically structured it reads like an engineering specification rendered as a webpage. The page operates on a stark duality: a bright white (#ffffff) canvas with near-black (#161616) text, punctuated by a single, unwavering accent — IBM Blue 60 (#0f62fe). This isn’t playful tech-startup minimalism; it’s corporate precision distilled into pixels. Every element exists within Carbon’s rigid 2x grid, every color maps to a semantic token, every spacing value snaps to the 8px base unit.

The IBM Plex type family is the system’s backbone. IBM Plex Sans at light weight (300) for display headlines creates an unexpectedly airy, almost delicate quality at large sizes — a deliberate counterpoint to IBM’s corporate gravity. At body sizes, regular weight (400) with 0.16px letter-spacing on 14px captions introduces the meticulous micro-tracking that makes Carbon text feel engineered rather than designed. IBM Plex Mono serves code, data, and technical labels, completing the family trinity alongside the rarely-surfaced IBM Plex Serif.

What defines IBM’s visual identity beyond monochrome-plus-blue is the reliance on Carbon’s component token system. Every interactive state maps to a CSS custom property prefixed with --cds- (Carbon Design System). Buttons don’t have hardcoded colors; they reference --cds-button-primary, --cds-button-primary-hover, --cds-button-primary-active. This tokenized architecture means the entire visual layer is a thin skin over a deeply systematic foundation — the design equivalent of a well-typed API.

Key Characteristics:

2. Color Palette & Roles

Primary

Neutral Scale (Gray Family)

Interactive

Support & Status

Dark Theme (Gray 100 Theme)

3. Typography Rules

Font Family

Hierarchy

RoleFontSizeWeightLine HeightLetter SpacingNotes
Display 01IBM Plex Sans60px (3.75rem)300 (Light)1.17 (70px)0Maximum impact, light weight for elegance
Display 02IBM Plex Sans48px (3.00rem)300 (Light)1.17 (56px)0Secondary hero, responsive fallback
Heading 01IBM Plex Sans42px (2.63rem)300 (Light)1.19 (50px)0Expressive heading
Heading 02IBM Plex Sans32px (2.00rem)400 (Regular)1.25 (40px)0Section headings
Heading 03IBM Plex Sans24px (1.50rem)400 (Regular)1.33 (32px)0Sub-section titles
Heading 04IBM Plex Sans20px (1.25rem)600 (Semibold)1.40 (28px)0Card titles, feature headers
Heading 05IBM Plex Sans20px (1.25rem)400 (Regular)1.40 (28px)0Lighter card headings
Body Long 01IBM Plex Sans16px (1.00rem)400 (Regular)1.50 (24px)0Standard reading text
Body Long 02IBM Plex Sans16px (1.00rem)600 (Semibold)1.50 (24px)0Emphasized body, labels
Body Short 01IBM Plex Sans14px (0.88rem)400 (Regular)1.29 (18px)0.16pxCompact body, captions
Body Short 02IBM Plex Sans14px (0.88rem)600 (Semibold)1.29 (18px)0.16pxBold captions, nav items
Caption 01IBM Plex Sans12px (0.75rem)400 (Regular)1.33 (16px)0.32pxMetadata, timestamps
Code 01IBM Plex Mono14px (0.88rem)400 (Regular)1.43 (20px)0.16pxInline code, terminal
Code 02IBM Plex Mono16px (1.00rem)400 (Regular)1.50 (24px)0Code blocks
Mono DisplayIBM Plex Mono42px (2.63rem)400 (Regular)1.19 (50px)0Hero mono decorative

Principles

4. Component Stylings

Buttons

Primary Button (Blue)

Secondary Button (Gray)

Tertiary Button (Ghost Blue)

Ghost Button

Danger Button

Cards & Containers

Inputs & Forms

Distinctive Components

Content Block (Hero/Feature)

Tile (Clickable Card)

Tag / Label

Notification Banner

5. Layout Principles

Spacing System

Grid & Container

Whitespace Philosophy

Border Radius Scale

6. Depth & Elevation

LevelTreatmentUse
Flat (Level 0)No shadow, #ffffff backgroundDefault page surface
Layer 01No shadow, #f4f4f4 backgroundCards, tiles, alternating sections
Layer 02No shadow, #e0e0e0 backgroundElevated panels within Layer 01
Raised0 2px 6px rgba(0,0,0,0.3)Dropdowns, tooltips, overflow menus
Overlay0 2px 6px rgba(0,0,0,0.3) + dark scrimModal dialogs, side panels
Focus2px solid #0f62fe inset + 1px solid #ffffffKeyboard focus ring
Bottom-border2px solid #161616 on bottom edgeActive input, active tab indicator

Shadow Philosophy: Carbon is deliberately shadow-averse. IBM achieves depth primarily through background-color layering — stacking surfaces of progressively darker grays rather than adding box-shadows. This creates a flat, print-inspired aesthetic where hierarchy is communicated through color value, not simulated light. Shadows are reserved exclusively for floating elements (dropdowns, tooltips, modals) where the element genuinely overlaps content. This restraint gives the rare shadow meaningful impact — when something floats in Carbon, it matters.

7. Do’s and Don’ts

Do

Don’t

8. Responsive Behavior

Breakpoints

NameWidthKey Changes
Small (sm)320pxSingle column, hamburger nav, 16px margins
Medium (md)672px2-column grids begin, expanded content
Large (lg)1056pxFull navigation visible, 3-4 column grids
X-Large (xlg)1312pxMaximum content density, wide layouts
Max1584pxMaximum content width, centered with margins

Touch Targets

Collapsing Strategy

Image Behavior

9. Agent Prompt Guide

Quick Color Reference

Example Component Prompts

Iteration Guide

  1. Always use 0px border-radius on buttons, inputs, and cards — this is non-negotiable in Carbon
  2. Letter-spacing only at small sizes: 0.16px at 14px, 0.32px at 12px — never on display text
  3. Three weights: 300 (display), 400 (body), 600 (emphasis) — no bold
  4. Blue 60 is the only accent color — do not introduce secondary accent hues
  5. Depth comes from background-color layering (white → #f4f4f4 → #e0e0e0), not shadows
  6. Inputs have bottom-border only, never fully boxed
  7. Use --cds- prefix for token naming to stay Carbon-compatible
  8. 48px is the universal interactive element height