Files
FamilyHUB/README.md
T
admin 48ef7217eb Updated API and Bot.
- added auth
- updated structure
2026-04-01 22:16:26 +03:00

66 lines
2.3 KiB
Markdown

# FamilyHUB
## Заполнение конфигурации
Приложение читает переменные окружения из `.env` (через `godotenv`) и затем из окружения процесса.
### 1. Создайте файл `.env` в корне проекта
```env
RUN_MODE=standalone
DEBUG_MODE=false
BOT_TOKEN=123456:telegram-bot-token
GOOGLE_APPLICATION_CREDENTIALS=/absolute/path/to/google-credentials.json
DB_PATH=sqlite://data/app.db
API_HOST=localhost
API_PORT=8000
API_SECRET=change-me
OPEN_API_ENABLED=true
OPEN_API_ENDPOINT=/docs
```
### 2. Обязательные переменные по режимам
`RUN_MODE` поддерживает значения:
- `bot`
- `api`
- `standalone`
Если `RUN_MODE=bot` или `RUN_MODE=standalone`, обязательны:
- `BOT_TOKEN`
- `GOOGLE_APPLICATION_CREDENTIALS`
Если `RUN_MODE=api` или `RUN_MODE=standalone`, обязательна:
- `API_SECRET`
### 3. Дефолты для API-режима
Если не заданы, будут использованы:
- `DB_PATH=sqlite://data/app.db`
- `API_HOST=localhost`
- `API_PORT=8000`
- `OPEN_API_ENDPOINT=/docs`
### 4. Описание переменных
- `RUN_MODE`: режим запуска (`bot`, `api`, `standalone`).
- `DEBUG_MODE`: `true/false`.
- `BOT_TOKEN`: токен Telegram-бота.
- `GOOGLE_APPLICATION_CREDENTIALS`: абсолютный путь к JSON-ключу Google.
- `DB_PATH`: строка подключения к БД (например `sqlite://data/app.db`).
- `API_HOST`: хост API.
- `API_PORT`: порт API.
- `API_SECRET`: секрет API.
- `OPEN_API_ENABLED`: включает swagger-ui endpoint (`true/false`).
- `OPEN_API_ENDPOINT`: путь для OpenAPI endpoint (в конфиге присутствует).
### 5. Быстрая проверка перед запуском
1. Убедитесь, что `RUN_MODE` выставлен корректно.
2. Проверьте обязательные переменные для выбранного режима.
3. Проверьте существование файла `GOOGLE_APPLICATION_CREDENTIALS` (если включен bot).
4. Убедитесь, что `DB_PATH` валиден и директория для SQLite доступна на запись.