Diff

Replit vs Duolingo

70 token-level differences between these two design systems.

Role tokens
Background
#0e1525 #ffffff
Text
#f5f9fc #4b4b4b
Brand
#1fe0ea #58cc02
Border
#ffffff14 #e5e5e5
Display font
Replit Sans din-round
Body size
17px 16px
colors 62 changed
~ bg #0e1525 #ffffff
~ surface #1c2333 #ffffff
~ text #f5f9fc #4b4b4b
~ text-strong #ffffff #3c3c3c
~ text-muted #9aa6b8 #777777
~ text-soft #6c7891 #afafaf
~ text-faint #4a5366 #d4d4d4
~ text-on-brand #0e1525 #ffffff
~ brand #1fe0ea #58cc02
~ brand-hover #3deef7 #61e002
~ brand-deep #0fb6c0 #3a8c00
~ brand-tint rgba(31,224,234,0.08) #d7ffb8
~ on-brand #0e1525 #ffffff
~ border #ffffff14 #e5e5e5
~ border-strong #ffffff24 #d4d4d4
~ border-soft #ffffff0a #f0f0f0
~ border-brand rgba(31,224,234,0.4) #58cc02
~ success #22c55e #58cc02
~ success-bg rgba(34,197,94,0.15) #d7ffb8
~ warning #ff8a3d #ff9600
~ warning-bg rgba(255,138,61,0.15) #fff4dd
~ danger #ef4444 #ff4b4b
~ danger-bg rgba(239,68,68,0.15) #ffe5e5
~ info #1fe0ea #1cb0f6
+ bg-soft #f7f7f7
+ bg-warm #fff4dd
+ surface-soft #fafafa
+ surface-tinted #f0fff0
+ text-link #1cb0f6
+ brand-pressed #46a302
+ streak-orange #ff9600
+ streak-orange-deep #cc7700
+ heart-red #ff4b4b
+ heart-red-deep #e02e2e
+ xp-gold #ffc800
+ xp-gold-deep #cc9f00
+ super-purple #ce82ff
+ super-purple-deep #a560d4
+ macaw-blue #1cb0f6
+ macaw-blue-deep #0a8acf
+ shadow-button #46a302
+ shadow-card rgba(0, 0, 0, 0.08)
+ shadow-modal rgba(0, 0, 0, 0.16)
+ info-bg #ddf4ff
bg-deep #0b1120
bg-darker #080d18
surface-high #2b3245
surface-low #161e2e
surface-elev #36405a
brand-soft rgba(31,224,234,0.15)
accent-orange #ff8a3d
accent-orange-soft rgba(255,138,61,0.15)
accent-pink #f26d9f
accent-pink-soft rgba(242,109,159,0.15)
accent-purple #9b6bff
accent-purple-soft rgba(155,107,255,0.15)
accent-yellow #ffd84a
link #1fe0ea
link-hover #3deef7
shadow-deep rgba(0,0,0,0.4)
shadow-soft rgba(0,0,0,0.25)
shadow-glow rgba(31,224,234,0.2)
typography 5 changed
~ display {"family":"Replit Sans","size":96} {"family":"din-round","size":88}
~ h1 {"family":"Replit Sans","size":72} {"family":"din-round","size":40}
~ h2 {"family":"Replit Sans","size":48} {"family":"din-round","size":32}
~ body {"family":"Replit Sans","size":17} {"family":"Lexend Deca","size":16}
~ label {"family":"JetBrains Mono","size":12} {"family":"SFMono-Regular","size":14}
radius 2 changed
~ button 6px 12px
~ card 8px 24px
spacing 1 changed
~ xs 2px 0px
↻ Swap direction · Duolingo → Replit