Substack vs Bluesky
63 token-level differences between these two design systems.
Background
#ffffff → #ffffff Text
#363737 → #0c0c0c Brand
#ff6719 → #0085ff Border
rgba(0, 0, 0, 0.10) → #dde1e7 Display font
Cahuenga → Inter Body size
19px → 15px colors 57 changed
~
text #363737 → #0c0c0c ~
text-strong #1a1a1a → #000000 ~
text-soft #666c70 → #7a838e ~
text-muted #878787 → #5e6772 ~
text-link #363737 → #0085ff ~
brand #ff6719 → #0085ff ~
brand-hover #e85412 → #006cd9 ~
brand-deep #cc4a0e → #0057b3 ~
border rgba(0, 0, 0, 0.10) → #dde1e7 ~
border-strong rgba(0, 0, 0, 0.20) → #bcc1c9 ~
border-soft rgba(0, 0, 0, 0.06) → #eef0f3 ~
success #0d8050 → #2bb673 ~
warning #d97706 → #f9a13e ~
danger #dc2626 → #e84545 ~
info #2563eb → #0085ff +
bg-warm #f8f9fa +
bg-muted #f1f3f5 +
bg-promo #e8f4ff +
surface-elevated #ffffff +
surface-hover #f1f3f5 +
surface-soft #eef7ff +
surface-strong #e8eaee +
text-disabled #a8aebd +
text-on-brand #ffffff +
text-link-hover #006cd9 +
brand-active #0057b3 +
brand-soft #e8f4ff +
accent-pink #fb44a3 +
accent-purple #9a75e9 +
accent-yellow #f5c518 +
accent-orange #f9a13e +
accent-red #e84545 +
accent-green #2bb673 +
border-focus #0085ff +
reply-line #dde1e7 +
reaction-like #fb44a3 +
reaction-repost #9a75e9 +
reaction-reply #5e6772 +
shadow-card rgba(0,0,0,0.06) +
shadow-modal rgba(0,0,0,0.20) +
shadow-popover rgba(0,0,0,0.12) +
success-soft #e0f6ec +
warning-soft #fff3e0 +
danger-soft #fdebeb +
info-soft #e8f4ff −
bg-elev #fafaf7 −
bg-cream #fbf9f4 −
bg-soft #f6f6f3 −
surface-warm #fafaf7 −
text-faint #a8a8a8 −
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) −
shadow-soft rgba(0, 0, 0, 0.06) −
shadow-medium rgba(0, 0, 0, 0.10) −
reading-rule rgba(0, 0, 0, 0.08) typography 5 changed
~
display {"family":"Cahuenga","size":56} → {"family":"Inter","size":56} ~
h1 {"family":"Cahuenga","size":40} → {"family":"Inter","size":40} ~
h2 {"family":"Cahuenga","size":32} → {"family":"Inter","size":32} ~
body {"family":"Spectral","size":19} → {"family":"Inter","size":15} ~
label {"family":"Monaco","size":13} → {"family":"Roboto Mono","size":11} radius 1 changed
~
card 12px → 8px spacing identical
No differences.