Локальная разработка
Требования
- Docker Desktop (или Docker + Compose v2)
- Node.js 20+ (для веб без Docker)
- Python 3.11+ (для API без Docker)
- Telegram Bot Token (опционально, для бота)
Быстрый старт (Docker)
# 1. Скопировать переменные окружения
cp .env.example .env
# Отредактировать BOT_TOKEN в .env
# При конфликте портов — изменить TABLETIME_*_PORT в .env
# 2. Запустить все сервисы (проект Docker: tabletime, не infra)
cd infra
docker compose --env-file ../.env up --build
# 3. Открыть (порты по умолчанию, см. .env.example)
# - Веб: http://localhost:3100
# - API: http://localhost:8100/health
# - MinIO: http://localhost:9011 (minioadmin/minioadmin)
Локальный запуск без Docker
PostgreSQL + Redis + NATS
Запустите инфраструктуру через Docker:
API
cd services/api
pip install -e ".[dev]" # или pip install из pyproject.toml
cp ../../.env.example ../../.env
alembic upgrade head
uvicorn app.main:app --reload --port 8000
Web
Bot
Проверка работоспособности
- Откройте http://localhost:3000
- Создайте комнату — получите код приглашения
- Откройте вторую вкладку → /join → введите код
- Оба участника видны в лобби
- Хост запускает
dice_board - Сыграйте партию до победы
MkDocs
pip install -r requirements-docs.txt
python -m mkdocs serve
./scripts/build-docs.sh # build --strict + .nojekyll для коммита site/
Публикация на GitVerse Pages
Статика MkDocs хранится в каталоге site/ в репозитории.
- Настройки репозитория → Страницы → Источник: «Ветка», папка
/site, веткаmaster. - После правок в
docs/:./scripts/build-docs.sh, закоммититьsite/, push. - URL:
https://gitverse.ru/Mihaham/Table-Time/(см.site_urlвmkdocs.yml).