Кодогенерация токенов дизайн-системы для Android по Figma API

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Содержание

  • Почему решили идти в историю с автоматизацией

  • Research и наша первая попытка

  • Реализация:

    • Data-слой

    • Генерация цветов

    • Генерация типографики

    • Генерация изображений

    • Работа с устаревшими (или deprecated) токенами

    • Остальные токены

    • Генерация XML для Android View System

    • Схема генерации. Итоговый проект

  • Итоги

  • Полезные ссылки

Приветствую, уважаемые читатели Хабра.

Вероятно, в вашей команде уже всерьёз обсуждается необходимость внедрения дизайн-системы, а может, вы уже её активно внедряете. 

Важное место в дизайн-системе занимают токены — самые низкоуровневые элементы, которые являются базой для всех компонентов и экранов.

К токенам можно отнести:

  • цвета,

  • типографику,

  • радиусы/формы,

  • паддинги/отступы,

  • иконки.

Список этим не ограничивается. По сути, токен — это любая информация, ассоциированная с именем. Некая константа, например:

color-text-primary: #000000

По мере развития проекта в целом и дизайн-системы в частности токенов становится очень много. Для примера — у нас уже около четырёхсот иконок, больше двухсот цветов и перспектива внедрения нескольких тем в приложении. Ещё мы активно внедрением Backend Driven UI</p>" data-abbr="BDUI">BDUI, на BFF которого верстаем виджеты, применяя токены дизайн-системы. А что ещё, если не автоматизация, позволит держать в консистентности всю эту систему?

Меня зовут Никита Яцкивский. Занимаю позицию главного Android-разработчика в отделе разработки мобильной платформы компании «Магнит». В статье расскажу про наш тернистый путь к собственному генератору токенов дизайн-системы.

Почему решили идти в историю с автоматизацией

Основные причины:

  • держать токены консистентными и синхронизированными с дизайном;

  • снизить человеческий фактор (ошибки);

  • экономить время разработчика на обновлении токенов.

Все эти причины можно смело умножить на два ввиду BDUI.

В том, что мы действительно идём в правильном направлении, мы убедились, взглянув на масштаб работ

Источник: https://habr.com/ru/companies/magnit/articles/803565/


Интересные статьи

Интересные статьи

В данной статье находится лабораторная работа, направленная на создание приложения калькулятора с базовыми функциями в android studio.
В этой статье я расскажу о классах-двойниках в ART и использовании этого механизма для получения полного списка полей, методов и конструкторов других классов, а также конвертации конструктора в метод ...
Возьмите свой хуавей/сяоми/айфон/самсунг/дексп/дигму в руки. И возьмите еще один смартфон у друга. Похожи как две капли!? Так было не всегда, особенно на самой заре развития Android смартфонов - 2009-...
Написано огромное количество документации и статей о важной визуальной составляющей приложений — анимации. Несмотря на это мы смогли вляпаться в проблемы столкнулись с загвоздками при...
Google предложил разработчикам обновить приложения для совместимости с архитектурой ARM64 в срок до 1 августа 2019 года, если они не соответствуют этим требованиям Найдем и включим поддержку ...