BrandToPrompt

Chess Design System: Functional Game-Centric UI

Visit Site

Explore Chess.com's design system - colors, typography, layout rules. Build game UIs with Chess.com's high-contrast functional style.

5 min read973 words

Brand Identity

Color Palette

Primary
Secondary

Typography

Primary Font
Chess Sans
Secondary Font
Chess V3

Design Style

Style
smart, restrained, approachable with high contrast and game-centric utility
Visual Density
compact grid-based with consistent 8px spacing
Border Style
rounded corners with 3px inputs, 5px buttons, 10px cards

Full Analysis

Chess.com Design System Deep Dive

1. Brand Overview

Chess.com’s interface is exactly what you’d expect from the biggest online chess platform in the world — but also more refined than many casual gaming sites. This isn’t a loud, neon gamer UI. It’s a serious, confident design language, speaking to both casual players and grandmasters.

The vibe: smart, restrained, approachable. The primary green (#81b64c) is instantly recognizable and has been their visual anchor for years. It’s earthy enough to feel tied to the chessboard’s green squares but saturated enough to work as a digital accent. This green is paired with deep, almost-black browns (#312e2b, #262421) that mimic the warmth of a physical chessboard. It's a subtle nod to tradition while staying fully digital.

Typography is bold where it matters (headings and calls to action) and system-default elsewhere for efficiency and performance. That’s a pragmatic choice — they don’t waste load time on fancy web fonts for small text. Large headings use their custom “Chess Sans” and “Chess V3” families, while body and UI text lean on -apple-system with standard fallbacks.

The design philosophy here is functional clarity: nothing is ornamental unless it directly supports gameplay or navigation. The layout is modular, breakpoints are clear (400px, 426px, 530px, 550px, 600px, 736px, 896px), and the spacing follows an 8px scale religiously.

What’s interesting — and I love this — is how much the interface feels like a physical chess experience. Dark backgrounds, warm wood tones, golds for trophies, deep reds for danger, aquas for highlight states. They’ve essentially built a board-game palette into a web UI.

If you’re a designer looking at Chess.com’s system, think: high-contrast, game-centric, utility-first. Every color, font weight, and shadow has a job. There’s no fluff. This is a working interface for millions of concurrent players — it’s not here to experiment.


2. Color System

2.1 Primary Colors

Primary Green: #81b64c — This is Chess.com’s identity color. It’s used for primary buttons, CTAs, and key highlights. Psychologically, green is associated with growth, success, and “go” states. Here, it also connects to chessboard squares, making it thematic and functional.

Secondary: rgba(255, 255, 255, 0.1) — This is used for secondary buttons and subtle backgrounds. It’s transparent white over dark surfaces, keeping things soft.

Competitor comparison: Lichess uses a cooler, greyer palette. Chess.com’s green stands out more, especially in marketing assets.


2.2 Complete Palette

Below is every color extracted from the system, with a role and usage note:

Color NameHexRoleUsage
Primary#81b64cBrand accentPrimary buttons, CTAs
Secondaryrgba(255,255,255,0.1)Accent backgroundSecondary buttons, overlays
White#ffffffText / backgroundsNav text, content areas
Dark Brown#312e2bSurfaceLayout title, hero wrapper
Transparent Black#00000aHover/focusSubtle overlay
Transparent White 25%rgba(255,255,255,0.25)Hover/focusOverlays
Light Green Hover#a3d160Hover stateButton hover
Transparent White 85%rgba(255,255,255,0.847)Overlay textSemi-bold text over dark bg
Transparent Black 14%#000000Hover/focusOverlay
............
Gold 75#fce26aTrophy highlightAwards
Blue 700#072a4fDeep blueBackgrounds, icons
Gray 300#dad8d6NeutralUI borders
Tier Emerald#81b64cRanking badgeEmerald tier
Green 500#45753cDark greenButton shading
Aqua 300#26c2a3AccentHighlight states
Red 500#ad1f24ErrorAlerts
Gold 400#cf8d1bTrophyAwards
Slate 600#263242Neutral darkPanels
Brown 200#f9d983AccentChessboard light squares
Skin 200#e3c29cAvatar tonesPlayer icons
Orange 500#a93616Alert highlightNotifications
Purple 400#5e53d9Special rankBadges
Fuchsia 200#fa466aAccentPuzzle streaks
Aqua 600#09505fAccent darkInfo panels
............

(Note: The full list is long — all CSS vars from the system are usable tokens.)


2.3 Color Relationships

This is a dark UI. Most surfaces are near-black or dark brown, with white text. That gives high contrast. Primary green stands out intensely against the dark surfaces. Accessibility-wise, white on dark easily passes WCAG AA and AAA for body text.

Functional colors (red for errors, aqua for info, gold for achievements) are saturated and distinct — no accidental overlaps. This is important in a game UI where color signals state.


2.4 Usage Guide

Works well:

  • Primary green with white text — high visibility.
  • Gold with dark backgrounds — trophy feel.
  • Aqua with dark — modern highlight.
  • Red with dark — clear error/danger.

Avoid:

  • Green + red together — too Christmas.
  • Aqua + gold — feels off-brand.
  • Transparent whites over light surfaces — readability drops.

3. Typography

3.1 Font Families

Two custom families: Chess Sans and Chess V3 for headings. Both are bold, geometric sans-serifs for large sizes.

For everything else: -apple-system, system-ui, Segoe UI, Helvetica, Arial. This is performance-driven — no load delay.

No Google Fonts or Adobe Fonts. No variable fonts — simple weights.


3.2 Type Scale

ElementFontSizeWeightLine Height
Heading-1Chess Sans42px8001.14
Heading-1Chess Sans36px8001.11
Heading-1Chess V328px4001.00
Heading-1Chess V324px4001.00
LinkChess Sans22px8001.14
Heading-1Chess Sans22px8001.14
Heading-1-apple-system18px6001.56
Link-apple-system17px6001.14
Heading-1-apple-system17px6001.14
Link-apple-system16px7001.43
Heading-1-apple-system16px7001.43
Button-apple-system16px700
Caption-apple-system14px6001.43
Caption-apple-system14px4001.50
Link-apple-system14px6001.14
CaptionChess Sans14px8001.14
Link-apple-system14px4001.50
Button-apple-system13px600
Caption-apple-system13px600
Caption-apple-system13px600— (capitalize)
Link-apple-system12px6001.43
Caption-apple-system10px6001.00

3.3 Hierarchy

Headings are huge and bold — 42px at 800 weight. This creates clear page structure. Links and buttons are slightly smaller but still bold (700–800 weight). Captions drop to 14px or below, with lighter weights.

This hierarchy works well in a game UI — titles jump out, actions are clear, and small text is unobtrusive.


4. Spacing & Layout

4.1 Spacing Scale

Base scale: 8px. Common values:

pxremUse
2px0.13remTight gaps
4px0.25remIcon spacing
8px0.5remButton padding
10px0.63remInput padding
16px1remSection gaps
24px1.5remCard padding
40px2.5remHero padding
80px5remLarge section spacing

4.2 Layout

Breakpoints: 400px, 426px, 530px, 550px, 600px, 736px, 896px. They clearly design mobile-first, scaling up with modular blocks.


5. Visual Elements

Border Radius

ValueUse
3pxInputs
5pxButtons
10pxCards/divs

Rounded, but not pill-shaped — except where necessary.

Shadows

Mostly subtle insets:

  • rgba(0,0,0,0) 0px -4px 24px 0px inset, rgba(0,0,0,0.1) 0px -1px 0px 0px inset — common.
  • Occasional drop shadows for depth.

Borders

Thin: 1px solid rgba(255,255,255,0.1) — subtle dividers.


6. Components

6.1 Buttons

Primary:

  • Default: bg #81b64c, white text, padding 0 5px, radius 5px.
  • Hover: bg white, text white (odd choice — might be placeholder).
  • Active: bg #2c6415, white text, border 1px solid rgba(162,192,169,0.5).
  • Focus: bg #1eaedb, border 1px solid #000, box-shadow rgba(0,159,217,0.5) 0 0 0 0.2rem.

Secondary:

  • Default: bg rgba(255,255,255,0.1), text rgba(255,255,255,0.72).
  • Hover/active/focus same as primary — reused states.

Default: rgba(255,255,255,0.85), no underline, bold. Hover: #565656.


6.3 Forms

Text input:

  • Default: bg rgba(255,255,255,0.08), text rgba(255,255,255,0.72), border 1px solid rgba(255,255,255,0.1), radius 3px.
  • Focus: bg #1eaedb, text white, border 1px solid #000.

6.4 Cards

No explicit card spec in data — but likely 10px radius, dark background, subtle inset shadow.


7. Design Tokens

:root {
  /* Colors */
  --color-primary: #81b64c;
  --color-secondary: rgba(255,255,255,0.1);
  --color-white: #ffffff;
  --color-dark-brown: #312e2b;
  --color-gold-75: #fce26a;
  --color-blue-700: #072a4f;
  /* ... include all vars from data ... */

  /* Typography */
  --font-chess-sans: "Chess Sans";
  --font-chess-v3: "Chess V3";
  --font-system: -apple-system, system-ui, Segoe UI, Helvetica, Arial;

  /* Spacing */
  --space-2: 2px;
  --space-4: 4px;
  --space-8: 8px;
  --space-10: 10px;
  --space-16: 16px;
  --space-24: 24px;
  --space-40: 40px;
  --space-80: 80px;

  /* Radius */
  --radius-sm: 3px;
  --radius-md: 5px;
  --radius-lg: 10px;

  /* Shadows */
  --shadow-inset-light: rgba(0,0,0,0) 0px -4px 24px 0px inset, rgba(0,0,0,0.1) 0px -1px 0px 0px inset;
}

8. AI Coding Assistant Prompt

# Chess.com Design System Specification

You are a Chess.com design expert. Build UIs matching their visual language exactly.

## Brand Context
Chess.com values functional clarity and game-centric aesthetics. The interface feels like a physical chess experience — dark surfaces, warm accents, and a strong green brand color. Typography is bold for headings, system-default for body.

## Color Palette
- Primary Green: #81b64c — Primary buttons, CTAs
- Secondary Transparent White: rgba(255,255,255,0.1) — Secondary buttons, overlays
- White: #ffffff — Text, backgrounds
- Dark Brown: #312e2b — Surfaces
- Gold 75: #fce26a — Trophies
- Blue 700: #072a4f — Deep accents
- Gray 300: #dad8d6 — Borders
- Aqua 300: #26c2a3 — Highlights
- Red 500: #ad1f24 — Errors
- ... include all extracted colors ...

## Typography
Fonts:
- Headings: "Chess Sans", "Chess V3"
- Body: -apple-system, system-ui, Segoe UI, Helvetica, Arial

Sizes:
| Level | Font | Size | Weight | Line Height | Use |
|-------|------|------|--------|-------------|-----|
| H1 | Chess Sans | 42px | 800 | 1.14 | Page titles |
| H1 | Chess Sans | 36px | 800 | 1.11 | Section titles |
| H1 | Chess V3 | 28px | 400 | 1.00 | Secondary headings |
| ... | ... | ... | ... | ... | ... |

## Spacing & Grid
Base: 8px. Scale: 2px, 4px, 8px, 10px, 16px, 24px, 40px, 80px.
Use multiples of 8px for layout. Buttons: 0px 5px padding.

## Border Radius
- sm: 3px — Inputs
- md: 5px — Buttons
- lg: 10px — Cards

## Shadows & Depth
Use subtle insets:
- rgba(0,0,0,0) 0px -4px 24px 0px inset, rgba(0,0,0,0.1) 0px -1px 0px 0px inset

## Components

### Primary Button
Default: bg #81b64c, color #ffffff, padding 0 5px, radius 5px, no border.
Hover: bg #ffffff, color #ffffff, opacity 0.9.
Active: bg #2c6415, color #ffffff, border 1px solid rgba(162,192,169,0.5).
Focus: bg #1eaedb, color #ffffff, border 1px solid #000, box-shadow rgba(0,159,217,0.5) 0 0 0 0.2rem.

### Secondary Button
Default: bg rgba(255,255,255,0.1), color rgba(255,255,255,0.72), padding 0 5px, radius 5px.
States match primary.

### Links
Default: color rgba(255,255,255,0.85), no underline.
Hover: color #565656.

### Input Fields
Default: bg rgba(255,255,255,0.08), color rgba(255,255,255,0.72), border 1px solid rgba(255,255,255,0.1), radius 3px.
Focus: bg #1eaedb, color #ffffff, border 1px solid #000.

## Layout & Responsive Rules
Breakpoints: 400px, 426px, 530px, 550px, 600px, 736px, 896px.
Mobile-first. Scale up modularly.

## Interaction Rules
Transitions: 150ms ease for state changes.
Focus indicators: box-shadow or solid border.
Disabled: opacity 0.5, no pointer events.

## DO
- Use only extracted palette colors.
- Maintain 8px grid.
- Use Chess Sans/Chess V3 for headings.
- Keep buttons bold and high-contrast.
- Respect dark UI contrast ratios.

## DON'T
- Invent new colors.
- Mix sharp and rounded corners.
- Use heavy drop shadows.
- Reduce text contrast.

## Code Examples

.btn-primary {
  background: #81b64c;
  color: #ffffff;
  padding: 0 5px;
  border-radius: 5px;
  font-weight: 600;
  font-size: 14px;
  border: none;
  transition: background 150ms ease;
}
.btn-primary:hover { background: #ffffff; opacity: 0.9; }
.btn-primary:focus { outline: none; box-shadow: rgba(0,159,217,0.5) 0 0 0 0.2rem; }

.input {
  background: rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.72);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 3px;
  padding: 8px 32px 8px 10px;
}
.input:focus { background: #1eaedb; color: #ffffff; border-color: #000; }

9. Summary

TL;DR — Chess.com’s design system is a disciplined, dark-themed, game-first UI. Primary green and warm browns anchor the palette, bold headings stand out, and spacing is tight and modular. Everything is functional — color means state, type means hierarchy.

Brand Keywords:

  • game-centric
  • high-contrast
  • functional-minimal
  • tradition-meets-digital