Carbon Design System — это открытая система дизайна, разработанная компанией IBM для создания согласованных пользовательских интерфейсов в цифровых продуктах. Она объединяет принципы интерфейсного проектирования, наборы повторно используемых компонентов, правила стилизации и руководства по взаимодействию, позволяя командам поддерживать единообразие визуального и поведенческого опыта в приложениях и на веб-платформах. Система рассчитана как на дизайнеров, так и на разработчиков, предоставляя спецификации для реализации компонентов в различных технологиях и средах.
Исторически Carbon возникла как внутренний стандарт визуального языка IBM, затем была оформлена в более формальную и доступную структуру с документацией, примерами и ресурсами для внедрения в продукты. В её составе присутствуют как базовые элементы (типографика, цвет, сетки, иконография), так и сложные интерактивные компоненты (панели, таблицы, формы, навигационные элементы). Carbon также включает рекомендации по доступности и адаптивной верстке, обеспечивая совместимость интерфейсов с различными устройствами и потребностями пользователей.
- Компоненты: библиотека повторно используемых UI-компонентов с описанием API, вариантов состояния и примеров использования.
- Шаблоны и блоки интерфейса: готовые схемы страниц и каркасы взаимодействия для типовых задач и рабочих процессов.
- Токены дизайна: единицы измерения для цвета, отступов, теней и типографики, предназначенные для согласованного применения в коде и стилях.
- Руководства по взаимодействию: правила по поведению компонентов, анимации, управлению состояниями и реагированию на действия пользователя.
- Доступность: рекомендации и требования для обеспечения соответствия стандартам доступности, включая контраст, навигацию с клавиатуры и семантику.
- Техническая реализация: примеры и реализации для популярных фреймворков, сборки и инструменты для интеграции в рабочие процессы разработки.
- Стилизация и тема: механизмы для настройки внешнего вида, поддержки светлых и тёмных тем и адаптации визуального языка к брендам.
- Документация и шаблоны: детальные спецификации, гайдлайны по использованию компонентов и шаблоны для ускоренного прототипирования.
- Модульность: архитектура, ориентированная на повторное использование и независимое развитие отдельных частей системы.
- Сообщество и вклад: практика совместной поддержки и развития системы через публичные репозитории, обсуждения и совместные улучшения.