Clerk vs Spotify
66 token-level differences between these two design systems.
Background
#131316 → #121212 Text
#ffffff → #ffffff Brand
#6c47ff → #1ed760 Border
rgba(255,255,255,0.10) → #282828 Display font
geistSans → Spotify Mix Body size
16px → 14px colors 60 changed
~
bg #131316 → #121212 ~
bg-deep #0a0a0c → #000000 ~
surface #22222a → #181818 ~
surface-soft #1a1a1f → #1a1a1a ~
surface-strong #2c2c35 → #282828 ~
text-muted #9394a1 → #727272 ~
brand #6c47ff → #1ed760 ~
brand-deep #5938e0 → #137a3a ~
accent-pink #ff7a8a → #ff6437 ~
accent-yellow #fff066 → #f0ff5b ~
border rgba(255,255,255,0.10) → #282828 ~
border-soft rgba(255,255,255,0.06) → #181818 ~
border-strong rgba(255,255,255,0.16) → #727272 ~
on-brand #ffffff → #000000 ~
shadow-card rgba(0,0,0,0.32) → rgba(0,0,0,0.5) ~
success #36d576 → #1ed760 ~
warning #ffb547 → #ffa42b ~
danger #ef2236 → #e91429 ~
info #3acefa → #509bf5 +
bg-base #000000 +
surface-elevated #2a2a2a +
surface-tinted rgba(0,0,0,0.5) +
surface-card #181818 +
surface-now-playing #181818 +
text-base #ffffff +
text-subdued #a7a7a7 +
text-bright-accent #1ed760 +
text-disabled #535353 +
brand-hover #1fdf64 +
brand-active #169c46 +
brand-classic #1db954 +
accent-purple #b28cff +
scrim-top linear-gradient(180deg, rgba(0,0,0,0.6) 0%, transparent 100%) +
scrim-card linear-gradient(0deg, rgba(0,0,0,0.7) 0%, transparent 100%) +
shadow-modal rgba(0,0,0,0.76) +
danger-text #f15e6c +
explicit-badge #727272 +
liked-heart #1ed760 +
premium-badge #1ed760 +
equalizer-bar #1ed760 −
bg-section #1a1a1f −
bg-elevated #22222a −
surface-glass rgba(255,255,255,0.04) −
text-soft #7c7d8a −
text-faint #5e5f6b −
text-on-brand #ffffff −
text-link #6c47ff −
text-link-hover #8a6dff −
brand-light #8a6dff −
brand-pale #a48efc −
brand-soft rgba(108,71,255,0.16) −
accent-cyan #3acefa −
border-brand #6c47ff −
hairline-cta #42434d −
on-dark #ffffff −
scrim rgba(0,0,0,0.72) −
shadow-elev rgba(0,0,0,0.48) −
shadow-glow-violet rgba(108,71,255,0.32) −
success-bg rgba(54,213,118,0.12) −
danger-bg rgba(239,34,58,0.12) typography 5 changed
~
display {"family":"geistSans","size":72} → {"family":"Spotify Mix","size":96} ~
h1 {"family":"geistSans","size":64} → {"family":"Spotify Mix","size":40} ~
h2 {"family":"geistSans","size":40} → {"family":"Spotify Mix","size":32} ~
body {"family":"geistSans","size":16} → {"family":"Spotify Mix","size":14} ~
label {"family":"soehneMono","size":13} → {"family":"SFMono-Regular","size":11} radius 1 changed
~
card 16px → 8px spacing identical
No differences.