UNPKG

umbot

Version:

Универсальная библиотека для создания чат-ботов и голосовых навыков с единой бизнес-логикой для различных платформ (ВКонтакте, Telegram, Viber, MAX, Яндекс.Алиса, Маруся, Сбер (SmartApp)) | (Universal framework for creating chatbots and voice skills with

168 lines (126 loc) 5.21 kB
# CLI утилита umbot ## Описание CLI утилита umbot предназначена для быстрого создания и настройки новых проектов на базе umbot. Утилита позволяет: - Создавать новые проекты по шаблонам - Настраивать конфигурацию проекта - Генерировать базовую структуру приложения ## Установка ```bash # Глобальная установка npm install -g umbot # Или локальная установка в проекте npm install umbot --save-dev ``` ## Использование ### Базовый синтаксис ```bash npx umbot <команда> [параметры] ``` ### Доступные команды | Команда | Описание | Параметры | | ------------- | ----------------------- | ----------------------------------------- | | `create` | Создание нового проекта | `<project-name>` или `<config-file.json>` | | `generateEnv` | Сгенерировать файл .env | - | ### Создание проекта #### Простое создание ```bash umbot create my-bot-project ``` #### Создание с конфигурацией ```bash umbot create config.json ``` ## Конфигурация проекта ### Структура конфигурационного файла ```typescript interface ProjectConfig { // Название проекта (обязательное поле) name: string; // Тип проекта: "default" или "quiz" type?: 'default' | 'quiz'; // Режим работы: "prod", "dev", "dev-online", "build" mode?: 'prod' | 'dev' | 'dev-online' | 'build'; // Конфигурация базы данных config?: DatabaseConfig[]; // Параметры приложения params?: AppParams[]; // Путь для создания проекта path?: string; // Имя хоста на котором будет запущено приложение. По умолчанию localhost hostname?: string; // Порт на котором будет запущено приложение. По умолчанию 3000 port?: string; // Определяет нужно создавать .env файл или нет isEnv?: boolean; } ``` ### Пример конфигурационного файла ```json { "name": "my-quiz-bot", "type": "quiz", "mode": "dev", "path": "./bots/quiz", "params": { "viber_token": "token" }, "config": { "json": "./data", "error_log": "./logs", "isLocalStorage": true, "db": { "host": "", "user": "", "pass": "", "database": "" } }, "isEnv": true } ``` ### Типы проектов | Тип | Описание | Особенности | | --------- | ---------------- | --------------------------------------- | | `default` | Базовый шаблон | Минимальная структура проекта | | `quiz` | Шаблон викторины | Готовая структура для создания викторин | ### Режимы работы | Режим | Описание | | ------------ | ------------------------------------- | | `prod` | Продакшн режим | | `dev` | Режим разработки | | `dev-online` | Режим разработки с онлайн обновлением | | `build` | Режим сборки | ## Примеры использования ### Создание простого бота ```bash umbot create simple-bot ``` ### Создание викторины ```json { "name": "quiz-bot", "type": "quiz", "mode": "dev", "config": { "json": "./data", "error_log": "./logs", "isLocalStorage": true } } ``` ```bash umbot create quiz-config.json ``` ## Лучшие практики 1. **Именование проектов**: - Используйте понятные имена - Избегайте пробелов и специальных символов - Придерживайтесь kebab-case 2. **Конфигурация**: - Храните конфигурацию в отдельных файлах - Не включайте чувствительные данные в репозиторий - Используйте разные конфигурации для разных окружений 3. **Структура проекта**: - Следуйте рекомендуемой структуре - Размещайте файлы в соответствующих директориях - Документируйте нестандартные решения