ed9b0879d5
Build bootstrap container / build (push) Successful in 2m42s
Release / release (push) Successful in 22m23s
Release / publish-packages (push) Successful in 14m53s
Release / trigger-coopenomics-docs (push) Successful in 2s
Release / trigger-mono-docs (push) Successful in 2s
⚙️ @coopenomics/setup
Интерактивный мастер первоначальной настройки платформы «Цифровой Кооператив». Создаёт файлы конфигурации .env для всех компонентов монорепозитория через удобный CLI-интерфейс с возможностью выбора режима разработки.
Основные возможности
- Интерактивный CLI с пошаговым мастером настройки
- Два режима установки: «Для разработки» и «Для использования»
- Два режима разработки: только фронтенд на тестнете или полная локальная среда
- Автоматическое копирование
.envфайлов для всех компонентов - Автоматическая сборка зависимых библиотек (cooptypes, factory, SDK)
- Запуск инфраструктуры через Docker Compose (для локального режима)
Установка
Компонент является частью монорепозитория. Установка зависимостей из корня проекта:
pnpm install
Скрипты
| Скрипт | Команда | Описание |
|---|---|---|
setup |
pnpm run setup |
Запуск интерактивного мастера настройки |
Из корня монорепозитория:
pnpm run setup
Режимы работы
Только фронтенд на тестнете
Минимальная настройка для разработки фронтенда с подключением к удалённой тестовой сети:
- Копирует
.env-testnet→.envдля desktop - Собирает библиотеки: cooptypes → factory → SDK
- Готово к запуску:
pnpm run dev:desktop
Локальный фронтенд и бэкенд
Полная локальная среда разработки со всей инфраструктурой:
- Копирует
.env-example→.envдля всех компонентов (desktop, controller, boot, factory, parser) - Запускает Docker Compose для инфраструктуры (см.
docker-compose.yaml) - Собирает библиотеки: cooptypes → factory → SDK → смарт-контракты
- Готово к запуску:
pnpm boot— инициализация блокчейнаpnpm run dev:backend— бэкендpnpm run dev:desktop— фронтенд
Архитектура
├── setup.ts # Точка входа — интерактивное CLI-меню
└── package.json # Зависимости (inquirer, ora, esno)
Ключевые зависимости
- inquirer — интерактивные CLI-меню и вопросы
- ora — спиннеры для отображения прогресса
- esno — запуск TypeScript без предварительной компиляции