Upstash vs Nubank
69 token-level differences between these two design systems.
Background
#f5f5f5 → #ffffff Text
#022c22 → #000000 Brand
#00bc7d → #8d0de3 Border
#e5e7eb → #000000 Display font
Inter Tight → nuSansDisplay Body size
16px → 16px colors 62 changed
~
bg #f5f5f5 → #ffffff ~
brand #00bc7d → #8d0de3 ~
brand-soft #00bc7d1f → rgba(141, 13, 227, 0.10) ~
link #007a55 → #8d0de3 ~
link-hover #006647 → #6a0aab ~
text #022c22 → #000000 ~
text-muted #71717b → #595959 ~
border #e5e7eb → #000000 ~
border-soft #0000000f → rgba(0, 0, 0, 0.10) ~
shadow-ambient rgba(2,44,34,0.06) → rgba(17, 0, 33, 0.06) ~
shadow-standard rgba(2,44,34,0.10) → rgba(17, 0, 33, 0.14) ~
shadow-elevated rgba(2,44,34,0.14) → rgba(17, 0, 33, 0.20) +
bg-subtle #f5f2fa +
bg-purple-tint #f3e9fd +
surface-purple #8d0de3 +
surface-purple-deep #6a0aab +
surface-purple-deepest #3d0764 +
text-body #1a1a1a +
text-subtle #8a8a8a +
text-on-purple #ffffff +
text-on-purple-muted #ecd9ff +
brand-bright #a32ff0 +
brand-deep #6a0aab +
accent-pink #ff4d8b +
accent-yellow #ffd23f +
link-on-purple #ffffff +
border-purple #8d0de3 +
border-on-purple rgba(255, 255, 255, 0.30) +
semantic-success #2db84f +
semantic-warning #f5a623 +
semantic-danger #e02d2d +
semantic-info #8d0de3 +
focus-ring rgba(141, 13, 227, 0.45) +
shadow-soft rgba(17, 0, 33, 0.10) −
bg-deep #ffffff −
bg-mute #eef4f1 −
surface-alt #fafafa −
surface-code #09090b −
brand-hover #00a86f −
brand-pressed #009963 −
on-brand-ink #022c22 −
accent #007a55 −
accent-hover #006647 −
accent-soft #065f4633 −
selected #00bc7d26 −
disabled #d4d4d8 −
disabled-text #a1a1aa −
text-heading #022c22 −
text-soft #52525b −
text-faint #a1a1aa −
text-disabled #a1a1aa −
border-strong #d4d4d8 −
border-brand #00bc7d66 −
shadow-glow rgba(0,188,125,0.22) −
success #00bc7d −
success-bg #eef4f1 −
warning #d97706 −
warning-bg #fef3c7 −
danger #dc2626 −
danger-bg #fee2e2 −
info #007a55 −
info-bg #eef4f1 typography 4 changed
~
display {"family":"Inter Tight","size":128} → {"family":"nuSansDisplay","size":80} ~
h1 {"family":"Inter Tight","size":56} → {"family":"nuSansDisplay","size":40} ~
h2 {"family":"Inter Tight","size":40} → {"family":"nuSansDisplay","size":32} ~
body {"family":"Inter","size":16} → {"family":"nuSansText","size":16} radius 1 changed
~
card 20px → 12px spacing 2 changed
~
lg 48px → 32px ~
xl 96px → 64px