Chef для Bitrix
Chef
CLI для сборки, тестирования, линтинга и диагностики JS-расширений Bitrix с поддержкой TypeScript
Установка
npm install -g @bitrix/chefЗатем chef init build в корне проекта
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Chef собирает JS-расширения Bitrix бандлером на Rollup с Babel и PostCSS, проверяет типы TypeScript и запускает ESLint. Unit-тесты на Mocha и Chai выполняются в реальных браузерах через Playwright, есть и E2E-тесты. Команда chef create создает новое расширение, chef flow-to-ts переводит код с Flow на TypeScript, а chef diag показывает зависимости, размеры бандлов, циклы и неиспользуемые расширения.
Для кого. Frontend-разработчикам, которые пишут JS-расширения для Bitrix и Битрикс24.
Подходит, если
- Создаете новое расширение в local/js и хотите готовую структуру
- Переводите старые расширения с Flow на TypeScript
- Нужно запустить тесты расширения в браузере из CI
- Ищете причину разросшегося бандла или циклические зависимости
Не подходит, если
- Проект не на Bitrix
- Нужно менять PHP-часть модуля: Chef работает только с JS и CSS
Пример запроса к агенту
Создай расширение vendor.orders через chef, настрой bundle.config.ts на TypeScript и собери егоОграничения
Нужен Node.js 22 и выше и проект на Bitrix или директория с исходниками модуля. Для тестов требуется локальная установка Bitrix, учетные данные в .env.test и браузеры Playwright.
Как отключить. Удалите пакет командой npm uninstall -g @bitrix/chef и VCS-хуки, если ставили их через chef init hooks.
Проверка безопасности
- Запускает сборку и тесты в браузере
- Для тестов хранит логин и пароль Bitrix в .env.test
- chef init hooks ставит VCS-хуки
Коротко о README
Chef это CLI для сборки, тестирования и поддержки JS-расширений Bitrix. Он включает сборку с TypeScript, тесты через Playwright, линтинг, создание расширений, миграцию с Flow и диагностику. README описывает параметры bundle.config.ts, проектный chef.config.ts, работу с browserslist и настройку тестового окружения. Документация есть на русском и английском.
Частые вопросы
Откуда Chef берет целевые браузеры?
Сначала из targets в bundle.config.ts, затем из .browserslistrc, а если его нет, использует baseline widely available.
Можно ли задать общие правила для всех расширений?
Да, через chef.config.ts в корне проекта с секциями deny, defaults и enforce.
Похожие
Скилл для фронтенд-дизайна: 23 команды, итерации в браузере и 61 правило поиска типичных огрехов AI-интерфейсов
Скиллы Vercel для агентов
Agent Skills
Скиллы Vercel: производительность React и Next.js, проверка UI по гайдлайнам, React Native, композиция компонентов и деплой
Скилл с базой стилей, палитр, шрифтовых пар и UX-правил, который генерирует дизайн-систему под тип продукта
Открытая альтернатива Claude Design: прототипы, презентации, дашборды и видео через ваших локальных агентов