Spotify дизайн-система.
Spotify дизайн-система — Музыкальный стриминг. Яркий зелёный на тёмном, жирный шрифт, с акцентом на обложки альбомов.
Посмотрите в контексте
Одни и те же дизайн-токены, применённые к разным типам артефактов — сайту, приложению, слайду, постеру. Оригинальные макеты, переоформленные этой системой, а не скриншоты.
it
real.
Дизайн-токены
56 токенов, соответствующих контракту токенов Open Design — та же структурированная палитра, шрифты, отступы и значения анимации, которые ваш agent читает, чтобы оформить любой артефакт.
Поверхность
-
--bg#121212 -
--surface#181818 -
--surface-warm#1f1f1f
Текст
-
--fg#ffffff -
--fg-2#fdfdfd -
--muted#b3b3b3 -
--meta#cbcbcb
Границы
-
--border#4d4d4d -
--border-softrgba(255, 255, 255, 0.1)
Акцент
-
--accent#1ed760 -
--accent-on#000000 -
--accent-hover#1db954 -
--accent-activecolor-mix(in oklab, var(--accent), black 10%)
Семантика
-
--success#1ed760 -
--warn#ffa42b -
--danger#f3727f
Типографика
-
--font-display"SpotifyMixUITitle", "CircularSp", "Helvetica Neue", Helvetica, Arial, sans-serif -
--font-body"SpotifyMixUI", "CircularSp", "Helvetica Neue", Helvetica, Arial, sans-serif -
--font-monoui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace
Шкала шрифтов
-
--text-xs10px -
--text-sm12px -
--text-base16px -
--text-lg18px -
--text-xl20px -
--text-2xl24px -
--text-3xl24px -
--text-4xl24px -
--leading-body1.50 -
--leading-tight1.00 -
--tracking-displaynormal
Отступы
-
--space-14px -
--space-28px -
--space-312px -
--space-416px -
--space-520px -
--space-624px -
--space-832px -
--space-1248px -
--section-y-desktop64px -
--section-y-tablet40px -
--section-y-phone24px
Скругление
-
--radius-sm9999px -
--radius-md6px -
--radius-lg8px -
--radius-pill9999px
Тени
-
--elev-flatnone -
--elev-ring0 0 0 1px var(--border) -
--elev-raisedrgba(0, 0, 0, 0.3) 0px 8px 8px
Фокус
-
--focus-ring0 0 0 3px rgba(30, 215, 96, 0.4)
Анимация
-
--motion-fast150ms -
--motion-base200ms -
--ease-standardease
Макет
-
--container-max1280px -
--container-gutter-desktop24px -
--container-gutter-tablet16px -
--container-gutter-phone16px
Design System Inspired by Spotify
Category: Медиа и потребительские сервисы Музыкальный стриминг. Насыщенный зелёный на тёмном фоне, жирная типографика, обложки альбомов как главный источник цвета.
1. Визуальная тема и атмосфера
Веб-интерфейс Spotify — это тёмный, погружающий музыкальный плеер, окутывающий слушателя почти чёрным коконом (#121212, #181818, #1f1f1f), где обложки альбомов и контент становятся основным источником цвета. Философия дизайна — «контент в темноте» — UI уходит в тень, чтобы музыка, подкасты и плейлисты могли светиться. Каждая поверхность — оттенок тёмно-серого, создающий театральную среду, где единственный настоящий цвет исходит от культового Spotify Green (#1ed760) и самих обложек альбомов.
Типографика использует SpotifyMixUI и SpotifyMixUITitle — проприетарные шрифты из семейства CircularSp (Circular от Lineto, адаптированный для Spotify) с широким стеком запасных шрифтов, включающим арабский, иврит, кириллический, греческий, деванагари и CJK-шрифты — отражение глобального охвата Spotify. Система типографики компактна и функциональна: 700 (bold) — для акцентов и навигации, 600 (semibold) — для второстепенного выделения, 400 (regular) — для основного текста. Кнопки используют верхний регистр с положительным межбуквенным расстоянием (1.4px–2px), придавая им систематичный, «лейбл»-подобный характер.
Особенность Spotify — геометрия «таблетки» и круга. Основные кнопки имеют радиус 500px–9999px (полная «таблетка»), круглые кнопки воспроизведения — 50%, строки поиска — «таблетки» на 500px. В сочетании с глубокими тенями (rgba(0,0,0,0.5) 0px 8px 24px) на приподнятых элементах и уникальной комбинацией вставной рамки с тенью (rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset) получается интерфейс, ощущающийся как премиальное аудиоустройство — тактильный, округлый и созданный для касания.
Ключевые характеристики:
- Погружающая тёмная тема почти чёрного оттенка (
#121212–#1f1f1f) — UI растворяется за контентом - Spotify Green (
#1ed760) как единственный фирменный акцент — никогда декоративный, всегда функциональный - Семейство шрифтов SpotifyMixUI/CircularSp с поддержкой глобальных систем письма
- Кнопки-«таблетки» (500px–9999px) и круглые элементы управления (50%) — скруглённые, оптимизированные для касания
- Метки кнопок в верхнем регистре с широким межбуквенным расстоянием (1.4px–2px)
- Глубокие тени на приподнятых элементах (
rgba(0,0,0,0.5) 0px 8px 24px) - Семантические цвета: красный для ошибок (
#f3727f), оранжевый для предупреждений (#ffa42b), синий для уведомлений (#539df5) - Обложки альбомов как основной источник цвета — UI намеренно ахроматичен
2. Цветовая палитра и роли цветов
Основной бренд
- Spotify Green (
#1ed760): Основной фирменный акцент — кнопки воспроизведения, активные состояния, CTA - Near Black (
#121212): Самая глубокая фоновая поверхность - Dark Surface (
#181818): Карточки, контейнеры, приподнятые поверхности - Mid Dark (
#1f1f1f): Фоны кнопок, интерактивные поверхности
Текст
- White (
#ffffff):--text-base, основной текст - Silver (
#b3b3b3): Вторичный текст, приглушённые метки, неактивная навигация - Near White (
#cbcbcb): Немного более яркий вторичный текст - Light (
#fdfdfd): Почти чисто-белый для максимального акцента
Семантические
- Negative Red (
#f3727f):--text-negative, состояния ошибок - Warning Orange (
#ffa42b):--text-warning, состояния предупреждений - Announcement Blue (
#539df5):--text-announcement, информационные состояния
Поверхности и рамки
- Dark Card (
#252525): Приподнятая поверхность карточки - Mid Card (
#272727): Альтернативная поверхность карточки - Border Gray (
#4d4d4d): Рамки кнопок на тёмном фоне - Light Border (
#7c7c7c): Рамки кнопок с обводкой, приглушённые ссылки - Separator (
#b3b3b3): Разделительные линии - Light Surface (
#eeeeee): Кнопки в светлом режиме (редко) - Spotify Green Border (
#1db954): Вариант зелёного акцентного бордера
Тени
- Heavy (
rgba(0,0,0,0.5) 0px 8px 24px): Диалоги, меню, приподнятые панели - Medium (
rgba(0,0,0,0.3) 0px 8px 8px): Карточки, выпадающие списки - Inset Border (
rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset): Комбинация вставной рамки с тенью для полей ввода
3. Правила типографики
Семейства шрифтов
- Заголовок:
SpotifyMixUITitle, запасные:CircularSp-Arab, CircularSp-Hebr, CircularSp-Cyrl, CircularSp-Grek, CircularSp-Deva, Helvetica Neue, helvetica, arial, Hiragino Sans, Hiragino Kaku Gothic ProN, Meiryo, MS Gothic - UI / Основной текст:
SpotifyMixUI, тот же стек запасных
Иерархия
| Роль | Шрифт | Размер | Насыщенность | Высота строки | Межбуквенное расстояние | Примечания |
|---|---|---|---|---|---|---|
| Заголовок раздела | SpotifyMixUITitle | 24px (1.50rem) | 700 | normal | normal | Жирный заголовок |
| Заголовок функции | SpotifyMixUI | 18px (1.13rem) | 600 | 1.30 (tight) | normal | Полужирные заголовки разделов |
| Жирный основной текст | SpotifyMixUI | 16px (1.00rem) | 700 | normal | normal | Акцентированный текст |
| Основной текст | SpotifyMixUI | 16px (1.00rem) | 400 | normal | normal | Стандартный текст |
| Кнопка в верхнем регистре | SpotifyMixUI | 14px (0.88rem) | 600–700 | 1.00 (tight) | 1.4px–2px | text-transform: uppercase |
| Кнопка | SpotifyMixUI | 14px (0.88rem) | 700 | normal | 0.14px | Стандартная кнопка |
| Жирная ссылка навигации | SpotifyMixUI | 14px (0.88rem) | 700 | normal | normal | Навигация |
| Ссылка навигации | SpotifyMixUI | 14px (0.88rem) | 400 | normal | normal | Неактивная навигация |
| Жирная подпись | SpotifyMixUI | 14px (0.88rem) | 700 | 1.50–1.54 | normal | Жирные метаданные |
| Подпись | SpotifyMixUI | 14px (0.88rem) | 400 | normal | normal | Метаданные |
| Жирный мелкий текст | SpotifyMixUI | 12px (0.75rem) | 700 | 1.50 | normal | Теги, счётчики |
| Мелкий текст | SpotifyMixUI | 12px (0.75rem) | 400 | normal | normal | Мелкий шрифт |
| Бейдж | SpotifyMixUI | 10.5px (0.66rem) | 600 | 1.33 | normal | text-transform: capitalize |
| Микро | SpotifyMixUI | 10px (0.63rem) | 400 | normal | normal | Наименьший текст |
Принципы
- Бинарность: жирный/обычный: Большинство текстов имеют насыщенность 700 (bold) или 400 (regular), 600 используется умеренно. Это создаёт чёткую визуальную иерархию через контраст насыщенности, а не вариацию размера.
- Кнопки в верхнем регистре как система: Метки кнопок используют верхний регистр + широкое межбуквенное расстояние (1.4px–2px), создавая систематичный «лейбл»-голос, отличный от контентного текста.
- Компактность размеров: Диапазон 10px–24px — уже, чем у большинства систем. Типографика Spotify компактна и функциональна, создана для просмотра плейлистов, а не чтения статей.
- Поддержка глобальных систем письма: Обширный стек запасных шрифтов (арабский, иврит, кириллица, греческий, деванагари, CJK) отражает присутствие Spotify на 180+ рынках.
4. Стилизация компонентов
Кнопки
Dark Pill
- Background:
#1f1f1f - Text:
#ffffffили#b3b3b3 - Padding: 8px 16px
- Radius: 9999px (полная «таблетка»)
- Применение: навигационные «таблетки», второстепенные действия
Dark Large Pill
- Background:
#181818 - Text:
#ffffff - Padding: 0px 43px
- Radius: 500px
- Применение: основные кнопки навигации приложения
Light Pill
- Background:
#eeeeee - Text:
#181818 - Radius: 500px
- Применение: CTA в светлом режиме (согласие на куки, маркетинг)
Outlined Pill
- Background: transparent
- Text:
#ffffff - Border:
1px solid #7c7c7c - Padding: 4px 16px 4px 36px (асимметрично для иконки)
- Radius: 9999px
- Применение: кнопки подписки, второстепенные действия
Circular Play
- Background:
#1f1f1f - Text:
#ffffff - Padding: 12px
- Radius: 50% (круг)
- Применение: элементы управления воспроизведением/паузой
Карточки и контейнеры
- Background:
#181818или#1f1f1f - Radius: 6px–8px
- На большинстве карточек видимые рамки отсутствуют
- Hover: незначительное осветление фона
- Shadow:
rgba(0,0,0,0.3) 0px 8px 8pxна приподнятых элементах
Поля ввода
- Поле поиска: фон
#1f1f1f, текст#ffffff - Radius: 500px (таблетка)
- Padding: 12px 96px 12px 48px (с учётом иконки)
- Focus: рамка становится
#000000, outline1px solid
Навигация
- Тёмная боковая панель со шрифтом SpotifyMixUI 14px насыщенностью 700 для активных, 400 для неактивных элементов
- Приглушённый
#b3b3b3для неактивных элементов,#ffffffдля активных - Круглые кнопки с иконками (радиус 50%)
- Логотип Spotify в верхнем левом углу зелёного цвета
5. Принципы вёрстки
Система отступов
- Базовая единица: 8px
- Шкала: 1px, 2px, 3px, 4px, 5px, 6px, 8px, 10px, 12px, 14px, 15px, 16px, 20px
Сетка и контейнеры
- Боковая панель (фиксированная) + основная область контента
- Карточки альбомов и плейлистов на основе сетки
- Полноширинная панель «сейчас играет» внизу
- Адаптивная область контента заполняет оставшееся пространство
Философия пустого пространства
- Тёмное уплотнение: Spotify упаковывает контент плотно — сетки плейлистов, списки треков и навигация расположены близко друг к другу. Тёмный фон обеспечивает визуальный отдых между элементами без необходимости в больших отступах.
- Плотность контента важнее воздуха: Это приложение, а не маркетинговый сайт. Каждый пиксель служит опыту прослушивания.
Шкала скругления углов
- Минимальный (2px): Бейджи, явные теги
- Тонкий (4px): Поля ввода, мелкие элементы
- Стандартный (6px): Контейнеры обложек, карточки
- Комфортный (8px): Секции, диалоги
- Средний (10px–20px): Панели, оверлеи
- Большой (100px): Крупные кнопки-«таблетки»
- Таблетка (500px): Основные кнопки, строка поиска
- Полная таблетка (9999px): Навигационные «таблетки», поиск
- Круг (50%): Кнопки воспроизведения, аватары, иконки
6. Глубина и высота
| Уровень | Обработка | Применение |
|---|---|---|
| Базовый (Level 0) | Фон #121212 | Самый глубокий слой, фон страницы |
| Поверхность (Level 1) | #181818 или #1f1f1f | Карточки, боковая панель, контейнеры |
| Приподнятый (Level 2) | rgba(0,0,0,0.3) 0px 8px 8px | Выпадающие меню, hover-карточки |
| Диалог (Level 3) | rgba(0,0,0,0.5) 0px 8px 24px | Модальные окна, оверлеи, меню |
| Вставной (Border) | rgb(18,18,18) 0px 1px 0px, rgb(124,124,124) 0px 0px 0px 1px inset | Рамки полей ввода |
Философия теней: Spotify использует заметно глубокие тени для тёмного приложения. Тень с непрозрачностью 0.5 и размытием 24px создаёт драматический эффект «парения в темноте» для диалогов и меню, а тень с непрозрачностью 0.3 и размытием 8px обеспечивает более тонкий подъём карточки. Уникальная комбинация вставной рамки с тенью на полях ввода создаёт утопленное, тактильное ощущение.
7. Что делать и чего избегать
Делать
- Использовать почти чёрные фоны (
#121212–#1f1f1f) — глубина через вариацию оттенков - Применять Spotify Green (
#1ed760) только для элементов управления воспроизведением, активных состояний и основных CTA - Использовать форму «таблетки» (500px–9999px) для всех кнопок — круглую (50%) для кнопок воспроизведения
- Применять верхний регистр + широкое межбуквенное расстояние (1.4px–2px) для меток кнопок
- Сохранять компактность типографики (диапазон 10px–24px) — это приложение, а не журнал
- Использовать глубокие тени (
0.3–0.5 opacity) для приподнятых элементов на тёмных фонах - Позволять обложкам альбомов обеспечивать цвет — сам UI ахроматичен
Не делать
- Не использовать Spotify Green декоративно или в качестве фона — он только функциональный
- Не использовать светлые фоны для основных поверхностей — тёмное погружение принципиально
- Не пропускать геометрию «таблетки» и круга на кнопках — прямоугольные кнопки ломают идентичность
- Не использовать тонкие/едва заметные тени — на тёмных фонах тени должны быть глубокими, чтобы быть видимыми
- Не добавлять дополнительные фирменные цвета — зелёный + ахроматические серые — полная палитра
- Не использовать свободные межстрочные интервалы — типографика Spotify компактна и плотна
- Не показывать голые серые рамки — использовать рамки на основе теней или вставные рамки
8. Адаптивное поведение
Точки перехода
| Название | Ширина | Ключевые изменения |
|---|---|---|
| Mobile Small | <425px | Компактный мобильный макет |
| Mobile | 425–576px | Стандартный мобильный |
| Tablet | 576–768px | Двухколоночная сетка |
| Tablet Large | 768–896px | Расширенный макет |
| Desktop Small | 896–1024px | Боковая панель видна |
| Desktop | 1024–1280px | Полный десктопный макет |
| Large Desktop | >1280px | Расширенная сетка |
Стратегия сворачивания
- Боковая панель: полная → свёрнутая → скрытая
- Сетка альбомов: 5 колонок → 3 → 2 → 1
- Панель «сейчас играет»: сохраняется при любом размере
- Поиск: поле-«таблетка» сохраняется, ширина регулируется
- Навигация: боковая панель → нижняя панель на мобильных
9. Руководство для агентных промптов
Быстрый справочник по цветам
- Background: Near Black (
#121212) - Surface: Dark Card (
#181818) - Text: White (
#ffffff) - Secondary text: Silver (
#b3b3b3) - Accent: Spotify Green (
#1ed760) - Border:
#4d4d4d - Error: Negative Red (
#f3727f)
Примеры промптов для компонентов
- “Create a dark card: #181818 background, 8px radius. Title at 16px SpotifyMixUI weight 700, white text. Subtitle at 14px weight 400, #b3b3b3. Shadow rgba(0,0,0,0.3) 0px 8px 8px on hover.”
- “Design a pill button: #1f1f1f background, white text, 9999px radius, 8px 16px padding. 14px SpotifyMixUI weight 700, uppercase, letter-spacing 1.4px.”
- “Build a circular play button: Spotify Green (#1ed760) background, #000000 icon, 50% radius, 12px padding.”
- “Create search input: #1f1f1f background, white text, 500px radius, 12px 48px padding. Inset border: rgb(124,124,124) 0px 0px 0px 1px inset.”
- “Design navigation sidebar: #121212 background. Active items: 14px weight 700, white. Inactive: 14px weight 400, #b3b3b3.”
Руководство по итерации
- Начните с #121212 — всё живёт в почти чёрной темноте
- Spotify Green только для функциональных акцентов (воспроизведение, активные состояния, CTA)
- Везде «таблетки» — 500px для крупных, 9999px для мелких, 50% для круглых
- Верхний регистр + широкий трекинг на кнопках — систематичный лейбл-голос
- Глубокие тени (0.3–0.5 opacity) для высоты — светлые тени невидимы на тёмном
- Обложки альбомов обеспечивают весь цвет — UI остаётся ахроматичным
Теги
design-systemfirst-partydesignmedia-consumer