Diff

Penpot vs Substack

53 token-level differences between these two design systems.

Role tokens
Background
#ffffff #ffffff
Text
#000000 #363737
Brand
#31efb8 #ff6719
Border
#d9d9d9 rgba(0, 0, 0, 0.10)
Display font
Work Sans Cahuenga
Body size
16px 19px
colors 43 changed
~ bg-soft #f5f8fb #f6f6f3
~ text #000000 #363737
~ text-muted #888888 #878787
~ brand #31efb8 #ff6719
~ brand-hover #2bd9a6 #e85412
~ on-brand #151035 #ffffff
~ border #d9d9d9 rgba(0, 0, 0, 0.10)
~ border-soft #f0f0f0 rgba(0, 0, 0, 0.06)
~ border-strong #dddddd rgba(0, 0, 0, 0.20)
+ bg-elev #fafaf7
+ bg-cream #fbf9f4
+ surface-warm #fafaf7
+ text-strong #1a1a1a
+ text-soft #666c70
+ text-faint #a8a8a8
+ text-link #363737
+ brand-deep #cc4a0e
+ brand-tint rgba(255, 103, 25, 0.10)
+ brand-tint-strong rgba(255, 103, 25, 0.18)
+ border-warm rgba(0, 0, 0, 0.08)
+ selection-bg rgba(255, 103, 25, 0.20)
+ success #0d8050
+ warning #d97706
+ danger #dc2626
+ info #2563eb
+ shadow-soft rgba(0, 0, 0, 0.06)
+ shadow-medium rgba(0, 0, 0, 0.10)
+ reading-rule rgba(0, 0, 0, 0.08)
surface-soft #f8f8f8
surface-dark #151035
text-indigo #151035
text-on-dark #fafafa
text-on-dark-pure #ffffff
accent-cyan #14ceca
on-accent #151035
inverse-bg #151035
inverse-text #fafafa
link #151035
link-hover #14ceca
semantic-success #52c41a
semantic-warning #faad14
semantic-error #ff4d4f
semantic-info #1677ff
typography 5 changed
~ display {"family":"Work Sans","size":72} {"family":"Cahuenga","size":56}
~ h1 {"family":"Work Sans","size":40} {"family":"Cahuenga","size":40}
~ h2 {"family":"Work Sans","size":32} {"family":"Cahuenga","size":32}
~ body {"family":"Work Sans","size":16} {"family":"Spectral","size":19}
~ label {"family":"SFMono-Regular","size":13} {"family":"Monaco","size":13}
radius 1 changed
~ button 8px 6px
spacing 4 changed
~ xs 0px 4px
~ sm 4px 8px
~ md 12px 16px
~ xl 64px 48px
↻ Swap direction · Substack → Penpot