Перейти к содержимому

UVectorFinder — Duplicate Vector Detection

Поиск и управление геометрически идентичными векторами в Figma.

Версия: 1.0.0 · Лицензия: MIT · GitHub


В больших дизайн-файлах одна иконка может существовать в десятках копий — немного растянутая, перевёрнутая, переименованная, без связи с компонентом. Это засоряет файл и создаёт проблемы при обновлении. UVectorFinder находит такие копии через анализ геометрии SVG-путей — независимо от позиции, масштаба, имени слоя или структуры.


  • Full scan — весь файл / страница / фрейм / секция
  • Selection mode — найти дубли только среди выбранных элементов
  • Tolerance control — exact / pixel / relaxed / loose (насколько похожи пути)
  • Cross-page navigation — переход к найденным элементам на других страницах
  • Persistent settings — настройки сохраняются между сессиями

Collect → Extract → Parse → Normalize → Fingerprint → Cluster
  1. Collect — обход дерева нод, сбор vector-нод
  2. Extract — извлечение SVG path geometry
  3. Parse — разбор path commands (M, L, C, Q, A, Z)
  4. Normalize — нормализация к единичному bounding box (position/scale инвариантность)
  5. Fingerprint — создание строкового хеша нормализованного пути
  6. Cluster — группировка по совпадающим fingerprint’ам

23 unit-теста покрывают parsing, normalization и fingerprinting.


РежимОбласть
SelectionТолько выделенные элементы
Frame/SectionТекущий выбранный фрейм
Current PageТекущая страница
Entire FileВесь документ (может быть медленным на больших файлах)

СлойТехнология
ЯзыкTypeScript 5.3
Бандлерtsup
ТестыJest 29.7 (23 unit tests)
Figma API@figma/plugin-typings

Используется при:

  • Чистке старых файлов от накопленных копий иконок
  • Аудите перед хендовером разработчику
  • Объединении нескольких файлов в один

Связанные инструменты:

  • [[design-lint|Design Lint]] — другой аудитор, проверяет стили и overrides