MozaikaProduct

Spotify — design system & UI screens

Consumer · 2 screens · 15 sections · spotify.com

Music streaming and podcast discovery platform. The home feed displays curated content in horizontal scrollable sections: trending songs with album artwork and artist names, popular artists as circular avatar cards, and popular albums and singles below. Left sidebar offers library management and onboarding prompts to create playlists and browse podcasts. Top search bar and navigation for premium/support options.

Open in Mozaika →

This is a static, crawlable rendering for search & AI engines. The interactive version — filters, live decode console, copy & export — is at https://mozaika.design/website/spotify.

Decoded design system

Spotify's decoded design system: background #121212, text #FFFFFF, accent #1ED760, link #0000EE, primary #1ED760; type scale h1 16px / h2 24px / body 16px; 4px spacing base; 0px base radius. The single interactive/action color is #000000 — used only on interactive or must-notice elements (buttons, links, key highlights), never on large fills.

Color roles

RoleValue
bg#121212
surface#202020
border#353535
text#FFFFFF
text_muted#A4A4A4
primary#1ED760
accent#1ED760
link#0000EE
secondary#9D968E
button_bg#000000
button_text#B3B3B3

Using these colors

Typography

Spacing

Radii

Shadows (elevation)

Motion

Micro-interactions run at 150ms (dominant) with cubic-bezier(0.3, 0, 0, 1).

Native design tokens

TokenValue
--essential-announcement#1278f2
--background-base#121212
--background-elevated-press#191919
--background-elevated-highlight#2a2a2a
--start-gradient-color#000000
--essential-positive#1ed760
--text-warning#ffa42b
--decorative-base#fff
--text-positive#1ed760
--background-elevated-base#1f1f1f

…and 99 more measured on the page.

Button states (measured)

Layout (measured)

Motion choreography (measured)

Load order: div.os-scrollbar-handle → h2.e-10451-text → div.r10xDelHVNgJK_xY×8 → p.e-10451-text×8 → span.e-10451-text×6 → div.P0DCrcBH45YVGZwP×30

Scroll reveal: 3 elements rest at opacity 0, animate in over 0.15s ease-out.

Overlay recipe (measured)

dialog panel: rgba(0, 0, 0, 0) · radius 0px

Input (measured)

height 48px · radius 500px · focus ring 1px auto rgb(16, 16, 16)

Responsive (measured)

Full design system, per-section tokens & DESIGN.md / Tailwind / CSS exports →

Screens

Sections (15)