Реализация Design Tokens для дизайн-системы веб-приложения

Наша компания занимается разработкой, поддержкой и обслуживанием сайтов любой сложности. От простых одностраничных сайтов до масштабных кластерных систем построенных на микро сервисах. Опыт разработчиков подтвержден сертификатами от вендоров.

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Реализация Design Tokens для дизайн-системы веб-приложения
Средний
~3-5 дней
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1364
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1253
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    960
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1191
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    933
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    950

В проекте с 5 разработчиками и 2 дизайнерами среда — хаос. Один использует #1A73E8, другой — #1565C0, а в Figma цвет называется Blue/600. Темизация выливается в дублирование стилей — каждый новый дизайн требует переписывания CSS. Команда тратит до 20 часов в неделю на согласование цветов и отступов, что приводит к 100+ стилевым багам в месяц. Решение — внедрение Design Tokens: единый источник правды для цвета, отступов, типографики, теней и анимаций. Мы прошли этот путь в 30+ проектах и знаем, как избежать граблей. Опыт показывает, что с токенами скорость изменений возрастает в 3 раза, а количество багов падает на 70%.

Почему дизайн-токены — это не просто CSS-переменные?

Прямая замена #1A73E8 на --color-primary — это переменная, не токен. Токен несёт семантику: --color-action-primary-default, --color-action-primary-hover. Разница принципиальная: при смене фирменного цвета нужно менять одно значение в одном месте, а не искать все вхождения «основного синего» по кодовой базе. Без токенов команда из 5 человек тратит до 20% времени на стилизации: дизайнер меняет Blue/600 в Figma, разработчик не знает, что это #1D4ED8 уже используется в 12 местах под разными hex-значениями. Темизация требует дублирования стилей вместо переключения набора переменных. По данным Amazon Style Dictionary, токены сокращают overhead на 40%.Amazon Style Dictionary

Как внедрить Design Tokens в дизайн-систему?

Внедрение начинается с аудита текущих стилей и Figma. Затем мы проектируем трехуровневую модель токенов: primitive, semantic и component. Primitive токены хранят сырые значения без контекста: color.blue.500: #3B82F6. Semantic токены привязывают смысл: color.action.primary.default: {color.blue.500}. Component токены задают конкретные компоненты: button.background: {color.action.primary.default}. Это позволяет менять дизайн глобально, изменяя одно значение в примитивах, и делает темизацию простым переключением файлов.

Трёхуровневая модель решает проблему дублирования

Если нужно сменить оттенок синего, меняется только primitive токен, и все компоненты автоматически получают новый цвет. Без этой модели пришлось бы править каждую кнопку, карточку и ссылку отдельно. Это в 10 раз эффективнее ручного обновления CSS.

Проблема Решение с токенами Результат
Разные значения одного цвета Централизованное хранение Одно изменение для всех
Трудности темизации Семантические токены для каждой темы Переключение CSS-файлов
Несоответствие Figma и кода Двусторонняя синхронизация Единый источник правды

Интеграция токенов с Figma

Используем плагин Tokens Studio для двусторонней синхронизации с GitHub. Рабочий процесс:

  1. Дизайнер меняет токен в Figma
  2. Плагин пушит изменение в ветку tokens/update-blue-palette
  3. CI запускает Style Dictionary, генерирует CSS/JS
  4. PR с обновлёнными артефактами — код-ревью и merge

Настройка Tailwind для токенов

В Tailwind 4 токены подключаются через директиву @theme:

@theme {
  --color-primary: var(--color-action-primary-default);
  --radius-button: var(--button-radius);
}

Версионирование токенов

Токены — часть кодовой базы. Храним их в монорепозитории дизайн-системы и публикуем как npm-пакет @company/[email protected]. Семантическое версионирование критично: переименование токена — breaking change (major), добавление — minor, исправление значения — patch или minor в зависимости от контекста. Changelog пишем читаемым для дизайнеров.

Пример структуры файлов токенов
tokens/
  primitive/
    color.json
    spacing.json
    typography.json
  semantic/
    color.json
    spacing.json
  component/
    button.json
    card.json

Инструменты трансформации

Style Dictionary от Amazon — стандарт де-факто. Вот типичная конфигурация:

// config.js
module.exports = {
  source: ['tokens/**/*.json'],
  platforms: {
    css: {
      transformGroup: 'css',
      buildPath: 'dist/css/',
      files: [{
        destination: 'tokens.css',
        format: 'css/variables',
        options: { outputReferences: true }
      }]
    },
    js: {
      transformGroup: 'js',
      buildPath: 'dist/js/',
      files: [{
        destination: 'tokens.js',
        format: 'javascript/es6'
      }]
    }
  }
};

Запуск npx style-dictionary build --config config.js генерирует CSS и JS. Output для CSS:

:root {
  --color-blue-500: #3B82F6;
  --color-action-primary-default: var(--color-blue-500);
  --button-background: var(--color-action-primary-default);
}

Тёмную тему можно добавить отдельным набором семантических токенов и собирать в tokens-dark.css.

Этапы работ

Этап Длительность Результат
Аудит существующих стилей и Figma 1–2 дня Отчёт по несоответствиям
Проектирование primitive и semantic токенов 2–3 дня JSON-схема токенов
Настройка Style Dictionary и компиляция 2–3 дня CSS/JS/SCSS артефакты
Интеграция в проект 2–4 дня Мерж-реквест с токенами
Интеграция с Figma (опционально) 3–5 дней Двусторонняя синхронизация

Что входит в работу

Мы проводим аудит текущих стилей и библиотеки Figma, проектируем трехуровневую схему токенов, настраиваем компиляцию через Style Dictionary и интегрируем в код (CSS, JS, Tailwind). Готовим документацию по использованию токенов и обучаем команду (1–2 часа). На все работы действует гарантия 3 месяца на работоспособность токенов.

Типичные ошибки при внедрении: не смешивайте primitive и semantic токены в одном файле; не используйте токены для значений, не являющихся дизайн-решениями (например, z-index модалки); всегда добавляйте fallback для старых браузеров; версионируйте токены с SemVer.

Свяжитесь с нами для предварительной оценки вашего проекта — мы определим сроки за 1 день. Получите консультацию инженера бесплатно. Закажите внедрение дизайн-токенов и избавьте команду от хаоса в стилях.

Почему дизайн без токенов ломает код, и как мы это чиним

Мы перестраиваем процесс UX/UI так, чтобы дизайн и код не расходились. Наш опыт — 5 лет на рынке, 120+ реализованных проектов в вебе и мобильных приложениях. Работаем по договору с фиксированной гарантией сроков. Часто к нам приходят с макетами, которые разработчики получают за два дня до спринта: 80 фреймов, половина без мобильных состояний, кнопки не компоненты, цвета захардкожены hex-значениями. Вёрстка превращается в угадайку, а поддержка UI через три месяца требует полного рефакторинга. Дизайн, который работает в продакшене, строится на системе токенов и компонентов — и мы это внедряем с первого спринта.

Как Figma превращается в инженерный инструмент

Figma — не просто «место, где рисуют». Это среда, из которой разработчик получает точные значения без звонков дизайнеру. Мы используем Design Tokens — единые переменные для цветов, отступов, радиусов. Они экспортируются напрямую в CSS custom properties или Tailwind config. Например, color/primary/500, spacing/md, radius/button. Без токенов дизайн и код расходятся уже через месяц.

Auto layout — обязательное условие. Компоненты без авто-лейаута ломаются при изменении текста. Кнопка с фиксированной шириной, которая не растягивается под длинный лейбл — классическая ошибка, которую мы не допускаем. С variants в одном component set разработчик видит все состояния (hover, disabled, pressed) сразу, а не переспрашивает перед каждым блоком. Интерактивный прототип дешевле правок после разработки — мы кликаем сложные сценарии (multi-step, wizard, onboarding) до того, как писать код.

Что дают дизайн-системы и когда они избыточны

Design system оправдана, когда над проектом работают 2+ дизайнера или есть несколько связанных продуктов (веб + мобильное приложение + админка). Для сайта-визитки мы ограничиваемся UI kit с базовыми компонентами. Если проект на React, строим систему поверх Radix UI (headless) с Tailwind CSS — как в Shadcn/ui. Компоненты полностью контролируемы, нет lock-in на стороннюю библиотеку. Wikipedia называет такой подход стратегически правильным для масштабирования.

Как мы обеспечиваем адаптивность без сюрпризов

По данным аналитики, планшеты дают 8–12% трафика в зависимости от ниши — игнорировать их нельзя. Но мы не делаем «десктоп + мобильный» с тремя брейкпоинтами. Проектируем под систему значений, совместимую с кодом: если фронтенд на Tailwind CSS, то sm:640, md:768, lg:1024, xl:1280, 2xl:1536. Дизайнер работает с теми же числами в Figma. Fluid typography и spacing через clamp() убирают скачки на нестандартных разрешениях — лендинги и публичные сайты получают плавное поведение без дополнительных усилий.

Что входит в работу (deliverables)

Мы отдаём результат, который можно сразу передать в разработку, без додумывания со стороны программиста.

Этап Что получаете
UX-исследование + IA Карта пользовательских путей, структура страниц, отчёт по точкам трения
Wireframes (lo-fi) Grayscale-схемы для согласования логики блоков
UI kit / design system Typography scale, color system, базовые компоненты с variants в Figma Variables
Hi-fi мокапы Реальный контент, адаптивные версии под 5+ брейкпоинтов
Handoff-пакет Figma Dev Mode, экспортированные SVG, аннотации для нестандартных состояний, ссылка на токены

Дополнительно: обучение команды работе с дизайн-системой (1–2 часа), доступ к Figma на весь период разработки, поддержка при внедрении.

Как мы гарантируем качество UI

Каждый макет проверяется инженером на реализуемость: нет ли конфликтов между auto layout, корректно ли работают состояния на мобильных, доступен ли контраст (WCAG AA). Мы используем Clarity для анализа текущего юзабилити, и на основе данных переделываем формы, которые теряют конверсию. Типичный результат — inline-валидация вместо submit-and-scroll-to-top увеличивает завершение регистрации на 15–20%. Skeleton screens вместо спиннеров снижают субъективное время загрузки.

Ориентиры по срокам и стоимости

Этап Срок
UX-исследование + IA 3–7 рабочих дней
Wireframes (10–20 экранов) 5–10 рабочих дней
UI kit / design system 5–15 рабочих дней
Hi-fi дизайн (10–20 экранов) 7–14 рабочих дней
Адаптивные версии +30–50% к времени на мокапы

Сроки зависят от количества уникальных экранов и сложности компонентной базы. Стоимость рассчитывается индивидуально — пишите, и мы оценим проект за 1 рабочий день. Получите консультацию по вашему сценарию — расскажем, на каких страницах UX теряет конверсию и как это исправить.