2026-05-27 00:07:44 +03:00
2026-05-26 23:02:11 +03:00
2026-05-26 23:02:11 +03:00
2026-04-01 22:16:26 +03:00
2026-04-01 23:16:27 +03:00

FamilyHUB

Структура репозитория

  • backend/ — текущий Go backend и миграции приложения.
  • frontend/ — директория под Vue-приложение.
  • infra/ — docker-compose, Dockerfile'ы и локальные infra-данные для разработки.
  • docs/ — документация проекта.

Заполнение конфигурации

Приложение читает переменные окружения из .env (через godotenv) и затем из окружения процесса.

1. Создайте файл .env в backend/

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=/openapi

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=/openapi

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 доступна на запись.

6. Запуск backend

cd backend
go run ./src

7. Запуск инфраструктуры

cd infra
docker compose up -d
S
Description
No description provided
Readme 442 KiB
Languages
Go 54%
Vue 37%
TypeScript 6.7%
CSS 1.5%
Dockerfile 0.4%
Other 0.3%