- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
 
- 
                keyboard_arrow_right keyboard_arrow_down
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
- 
                keyboard_arrow_right keyboard_arrow_down
 
 
- 
                
- 
                keyboard_arrow_right keyboard_arrow_down
- YCLIENTS
- Маркетплейс интеграций
- Плагинизация
- Руководство по созданию Frontend плагина
- Подготовка окружения
- Установка зависимостей
Установка зависимостей
Требования
- Node.js версии 18.0.0 или выше.
- npm (входит в состав Node.js).
- TypeScript 5.0.0 или выше.
Структура монорепозитория
Монорепозиторий организован следующим образом:
- frontend/— корневая директория проекта.- apps/*— директория с плагинами.
- packages/*— общие пакеты.
- tools/*— инструменты для разработки.
- docs/— документация проекта.
 
Установка
1. Клонирование репозитория
git clone <repository-url> cd <plugin-directory>
2. Установка зависимостей
В корневой директории проекта (frontend/) выполните:
npm install
Эта команда установит все зависимости для:
- Корневого проекта.
- Всех плагинов в директории apps/
- Всех пакетов в директории packages/
- Всех инструментов в директории tools/
3. Проверка установки
После установки можно проверить, что все работает корректно:
# Проверка линтера npm run lint # Проверка типов TypeScript npm run typecheck # Запуск тестов npm run test # Запуск сборки npm run build
Работа с зависимостями
1. Добавление новых зависимостей
- Для добавления зависимости в конкретный плагин:cd frontend/apps/<plugin-name> npm install <package-name> 
- Для добавления общей зависимости в корневой проект:cd frontend npm install <package-name> 
2. Обновление зависимостей
Для обновления всех зависимостей в монорепозитории:
cd frontend npm update
3. Очистка
Если возникли проблемы с зависимостями, можно выполнить полную очистку:
cd frontend npm run clean npm install
Скрипты
В корневом package.json доступны следующие команды:
- npm run build— сборка всех пакетов и плагинов.
- npm run dev— запуск режима разработки.
- npm run lint— проверка кода линтером.
- npm run typecheck— проверка типов TypeScript.
- npm run test— запуск тестов.
- npm run format— форматирование кода с помощью Prettier.
- npm run clean— очистка всех node_modules.
Инструменты разработки
Проект использует следующие инструменты разработки:
- TypeScript 5.0.0+ — для типизации.
- ESLint 8.0.0+ — для линтинга.
- Prettier 3.0.0+ — для форматирования кода.
- TypeScript ESLint — для проверки TypeScript кода.
Примечания
- Все пакеты в директории packages/, плагины вapps/и инструменты вtools/являются частью единого workspace.
- При установке новых зависимостей убедитесь, что они совместимы с версией Node.js >= 18.0.0.
- Для разработки рекомендуется использовать последнюю LTS версию Node.js.
- Все команды в корневом package.json автоматически применяются ко всем workspace через флаг --workspaces
Была ли статья полезна?