Обзор и назначение
1.0.0Размер: 9.39 KBПокрытие: 99.83 % в 300 тестах
ARFA Generator — ядро автоматизации процессов frontend-разработки. Он объединяет генерацию файлов, архитектурные проверки и инструменты контроля качества в единый пайплайн с возможностью подключения сборки и вывода результатов для разработчиков (консоль) и LLM-агентов (CLI feedback).
Инструмент создан для Automation Ready Frontend Architecture — подхода к построению легко поддерживаемых долгоживущих архитектур с возможностью автоматизации, — но подходит и для проектов с другими архитектурными принципами.
Библиотека использует строгую типизацию, имеет минимум зависимостей (chokidar и TypeScript как peer dependency) и широкое покрытие тестами.
Использование возможно в трех режимах:
- единоразовый codegen — выполнение генерации и проверок до запуска процесса сборки или по необходимости
- параллельный watch — бандлер и генератор одновременно следят за изменениями (при этом будут лишние пересборки)
- generator-first — только watch генератора, а сборка вызывается после стабилизации кодовой базы в
afterCheckers(наиболее эффективный режим, позволяющий строить пайплайн с единообразным выводом логов и ошибок)
Единый пайплайн
ARFA Generator становится связующим звеном между всеми инструментами — будь то операции, влияющие на исходные файлы, внешние проверки или создание артефактов бандлером.
В библиотеку включены плагины и чекеры наиболее широкого назначения, но под конкретный проект можно создать свой набор. Пример возможностей:
На основе файловой структуры и имен файлов можно создавать:
- barrel-файлы
_reexport.tsилиindex.tsс реэкспортами всех публичных файлов в папке - локальный
package.jsonилиindex.ts, указывающий на главный файл компонента - сборные структуры с типами — например, собирая
pages/*/store.tsфайлы - карты роутинга для асинхронных импортов и т.п.
Если добавить к структуре чтение содержимого файлов, то можно:
- собирать ключи локализации и дефолтные значения в один или несколько JSON-файлов для передачи в систему переводов
- создавать из TypeScript-контрактов схемы валидации
- собирать документацию, проверять дубликаты и единообразие нейминга и т.п.
Если подключить чекеры, то можно:
- проверять типы и форматирование
- проверять синхронизированность env-параметров
- проверять границы импортов модулей
- использовать любые сторонние инструменты через CLI и т.п.
Требования
Требуются TypeScript 5 или 6 (для TS API) и Node.js >=22.17.0. Пакет поставляется только в формате ESM.