Design language comparison
Hex vs Plain
Both Hex and Plain commit to a dark-canvas approach, and they pair different display families (IBM Plex Sans vs sans-serif). Beyond surface, motion levels are both subtle.
Palette · side by side
Up to 8 dominant swatches eachSide A · dark
Hex
Full Page
#01011b
brand
#31263b
foreground
#717a94
foreground
#000000
foreground
#22863a
accent
#472d7b
accent
#ecedf2
background
#5ec962
accent
Side B · dark
Plain
Full Page
#000000
foreground
#0a2414
brand
#17b267
brand
#0000ee
accent
#f3fbe9
background
#ffffff
background
#1f1f28
foreground
#f9f6f1
background
Typography · side by side
Primary family + weight ladder + sampleSide A · dark
Hex
Full Page
- Display
- IBM Plex Sans
- Body
- Cinetype
- Mono
- IBM Plex Mono
- Weights
- 400 · 500 · 600 · 700
Sample
The quick brown fox jumps over the lazy dog.
1234567890 — Body sample renders in the captured family if your browser has it; otherwise system fallback signals the weight ladder.
Side B · dark
Plain
Full Page
- Display
- ABC Favorit Regular
- Body
- sans-serif
- Mono
- Geist Mono
- Weights
- 400
Sample
The quick brown fox jumps over the lazy dog.
1234567890 — Body sample renders in the captured family if your browser has it; otherwise system fallback signals the weight ladder.
Spacing scale · side by side
Base unit + first 8 scale valuesSide A · dark
Hex
Full Page
- Base unit
- 4 px
- Container max
- 1000 px
Side B · dark
Plain
Full Page
- Base unit
- 4 px
- Container max
- 1200 px
Motion vocabulary · side by side
Level + durations + easingsSide A · dark
Hex
Full Page
- Level
- subtle
- Libraries
- Framer Motion
Durations
Easings
Side B · dark
Plain
Full Page
- Level
- subtle
- Libraries
- Framer Motion
Durations
Easings
Palette & spacing overlap
Their palettes share 10% of swatches at the dominant tier — a quiet signal both teams drew from the same neutral library before applying brand accents. Their spacing scales overlap by 67% (4, 8, 10, 12, 16 px shared) — a rhythm any agent can transfer between the two systems with minimal recalibration.
Shared swatches (2)
Curator verdict
If you are building an interface that needs to reference both, Hex's restraint reads as the safer default and Plain's rhythm provides the accent moments — pair them at section-level, not at component-level.