Skip to content

MikhailWar/tgbot_template_v3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Шаблон Telegram бота

Описание

Шаблон проекта для создания Telegram бота с использованием архитектуры чистого кода (Clean Architecture), SQLAlchemy для работы с базой данных и Alembic для миграций.

Структура проекта

tgbot_template_v3
├── src
│   └── app
│       ├── application    # Бизнес-логика приложения
│       │   ├── gateway    # Интерфейсы для работы с внешними сервисами
│       │   └── usecases   # Сценарии использования
│       ├── bootstrap      # Инициализация приложения
│       ├── domain         # Доменная модель
│       ├── infrastructure # Внешние сервисы и инфраструктура
│       └── presentation   # Слой представления
├── .env                   # Переменные окружения
├── .env.dist             # Шаблон переменных окружения
├── alembic.ini           # Конфигурация Alembic

Требования

  • Python 3.11.5
  • virtualenv

Установка и настройка

  1. Клонируйте репозиторий:
git clone <url_репозитория>
cd tgbot_template_v3
  1. Создайте и активируйте виртуальное окружение:
python -m venv .venv

# Для Windows
.venv\Scripts\activate

# Для Linux/MacOS
source .venv/bin/activate
  1. Установите зависимости:
pip install .
  1. Создайте файл с переменными окружения:
cp .env.dist .env
  1. Отредактируйте файл .env, заполнив все необходимые поля.

Настройка базы данных

  1. Создайте начальную миграцию:
alembic revision --autogenerate
  1. Примените миграции:
alembic upgrade head

Запуск бота

make run.bot

Разработка

При внесении изменений в модели данных не забывайте создавать и применять миграции:

alembic revision --autogenerate -m "описание изменений"
alembic upgrade head

About

Шаблон бота aiogram 3

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published