Перейти к содержанию

FISYCO

Публичная бета

Иконки в React

Обновлено 8 ноября 2026 г.

Библиотека иконок берёт компоненты-иконки из файла Figma и доставляет их в ваш репозиторий через pull request: по React-компоненту на иконку, одним SVG-спрайтом или пакетом SVG-файлов. На этой странице вы её настроите и увидите, что попадёт в код.

Перед началом

  • Figma подключена к вашему воркспейсу, и файл с иконками доступен через это подключение. См. Подключение Figma.
  • К проекту подключён репозиторий. Pull request'ы приходят туда. См. Подключение репозитория.
  • Вы сопровождающий проекта либо владелец или администратор воркспейса.

Создайте библиотеку

  1. Откройте проект и нажмите Добавить библиотеку. Выберите Иконки и нажмите Продолжить.
  2. Общие настройки. Укажите Название и вставьте ссылку в поле Figma файл.
  3. Источник. Выберите страницу слева, затем секции с иконками. Каждый компонент или набор компонентов внутри них станет одной иконкой. Остальные слои не выгружаются.
  4. Генерация. Задайте папку вывода и режим генерации (см. следующий раздел).
  5. Нажмите Создать библиотеку. Первая синхронизация запустится сама.

Всё это можно поменять позже в Настройках библиотеки, на вкладках Общие, Источник, Генерация и Пул-реквесты.

На вкладке Обзор собраны все иконки, сгруппированные по секциям Figma, и есть поиск. Переключатель над сеткой показывает main, то есть иконки, которые уже в коде, или figma/head, то есть иконки в том виде, в каком они сейчас в Figma. Когда первый pull request сольют, в main появятся доставленные иконки.

Выберите, куда и как генерировать файлы

Откройте Настройки, затем Генерация.

Директория вывода задаёт папку в репозитории для сгенерированных файлов. Впишите путь или нажмите Выбрать папку и выберите её в репозитории. Папку, которой ещё нет, создаст первый коммит.

Затем выберите Режим генерации:

Компоненты всегда генерируются под React. Для другого фреймворка возьмите спрайт или пакет.

Настройки компонентов

  • Паттерн вывода, например {section}/{name}: из {page}, {section} и {name} собирается путь каждого файла.
  • TypeScript, Тип экспорта (Именованный экспорт или Экспорт по умолчанию) и Стиль объявления (Стрелочная функция или Объявление функции).
  • Позиция props: куда на <svg> попадают переданные props, После или До собственных атрибутов, либо Нет.
  • Режим иконки (размер 1em): иконка подстраивается под размер окружающего шрифта.
  • SVG-атрибуты по умолчанию: ширина, высота и цвет для каждого компонента.
  • Замена значений атрибутов: заменяет цвет из Figma на currentColor, чтобы иконки брали цвет текста. Добавьте по правилу на каждый цвет, например #000000 → currentColor.
  • Шаблон компонента: пресет или собственный шаблон файла.

Имена файлов пишутся в kebab case, имена компонентов в PascalCase. С настройками по умолчанию иконка arrow-right станет файлом arrow-right.tsx в папке вывода с именованным экспортом:

Настройки спрайта и пакета

У спрайта есть Имя файла спрайта, Префикс symbol id и свой список Замена значений атрибутов. Id каждого символа совпадает с именем иконки, а если задан префикс, он стоит впереди: например, icon-arrow-right.

Стили не проникают внутрь <use>, поэтому иконка из спрайта сохраняет цвет из Figma, пока вы его не замените. Добавьте правило спрайта, например #000000 → currentColor, и иконку можно будет красить из CSS. Правила компонентов на спрайт не действуют.

У пакета есть Имя пакета, Имя входного файла, Формат пакета (ESM, CJS или оба) и Добавить exports map в package.json. Иконки в пакете сохраняют цвета, нарисованные в Figma.

Получите pull request

После синхронизации в шапке библиотеки видно, сколько иконок ждут доставки, а вкладка Ожидают показывает их списком. Как их читать, описано в разделе Просмотр изменений.

  1. Нажмите Создать PR в шапке.
  2. FISYCO откроет pull request, который добавит, обновит и удалит файлы иконок. В его описании перечислены изменения.
  3. Если у библиотеки уже есть открытый pull request, кнопка называется Обновить PR, и новые файлы уходят в тот же pull request.

FISYCO удаляет только те файлы, которые сам записал прошлой доставкой, и не трогает остальные файлы в папке. Когда pull request сольют, его иконки считаются доставленными.

На вкладке Пул-реквесты задаются Имя ветки, Заголовок PR и метки для добавленных, изменённых и удалённых иконок. Метка ставится, только если в pull request есть изменения этого вида. Если ваш тариф включает автоматические pull request'ы, там же есть Автоматически создавать PR после каждой синхронизации.

Новые синхронизации запускаются сами: FISYCO регистрирует вебхук на файл Figma, и публикация библиотеки в Figma запускает синхронизацию. Когда в шапке написано Есть изменения, кнопка Синхронизировать запустит её вручную.

Переименования и конфликты имён

Переименованная в Figma иконка сохраняет свой node ID, поэтому FISYCO показывает её как переименование, а не как удаление и новую иконку.

Если имена двух иконок после нормализации совпали, запуск синхронизации показывает Обнаружен конфликт имён и предлагает имя вроде name-2. Откройте запуск на вкладке История и нажмите Применить переименование. Новое имя останется за этой иконкой и в следующих синхронизациях.

См. также