Artem Tsyrulnikov 2fb8c83041 new telegram bot
2025-12-30 19:50:15 +03:00
2025-12-30 19:50:15 +03:00
2025-12-30 19:50:15 +03:00
2025-12-30 19:50:15 +03:00
2025-12-30 19:50:15 +03:00
2025-12-08 22:53:31 +03:00
2025-12-23 10:43:01 +03:00
2025-12-14 13:58:04 +03:00
2025-12-14 13:58:04 +03:00

tgex-backend

Быстрый старт

# Установить зависимости
uv sync

# Скопировать примеры конфигов
cp docker-compose.yml.example docker-compose.yml
cp .env.example .env

# Поднять Postgres и сервисы
make up

# (первый запуск) проинициализировать базу и таблицы aerich
make migrate-init

# Применить актуальные миграции
make migrate-up

Открыть:

Полезные команды

make up             # поднять приложение и Postgres
make down           # остановить контейнеры
make migrate-init   # однократная инициализация базы (aerich init-db)
make migrate-up     # применить миграции (aerich upgrade)
make migrate-create # сгенерировать новую миграцию (aerich migrate)
make test           # pytest
uv run ruff check . # линтер
uv run mypy .       # типизация

Архитектура

  • FastAPI + PostgreSQL + Tortoise ORM, aiogram 3.x для бота
  • Слои: domain (модели/правила), usecase (бизнес-логика), adapter (БД/бот/JWT), controller (HTTP + Telegram), dto
  • Все use case оборачиваются в self.database.transaction() и проверяют права через domain.WorkspacePermissions
  • Миграции и схема БД управляются aerich (migrations/models)
Description
No description provided
Readme 22 MiB
Languages
Go 57.1%
Python 42.7%