Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lubaskinc0de/tactic
Легковесный шаблон telegram-бота на Python с чистой архитектурой.
https://github.com/lubaskinc0de/tactic
aiogram aiogram-dialog alembic docker docker-compose postgresql python telegram
Last synced: 17 days ago
JSON representation
Легковесный шаблон telegram-бота на Python с чистой архитектурой.
- Host: GitHub
- URL: https://github.com/lubaskinc0de/tactic
- Owner: lubaskinc0de
- License: mit
- Created: 2023-08-30T21:56:29.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2023-12-07T15:31:00.000Z (about 1 year ago)
- Last Synced: 2023-12-07T16:41:49.435Z (about 1 year ago)
- Topics: aiogram, aiogram-dialog, alembic, docker, docker-compose, postgresql, python, telegram
- Language: Python
- Homepage:
- Size: 671 KB
- Stars: 11
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
### Минимальный шаблон бота aiogram3
👋 **Приветствую**! В данном репозитории хранится мой легковесный шаблон для телеграм бота на **Python** с использованием:
- aiogram 3
- aiogram-dialog 2
- docker
- postgresql
- redis
- alembicИз **плюсов** данного шаблона, я могу выделить:
- Чистая архитектура, код легко расширять, изменять и поддерживать.
- Готовая система миграций **alembic**.
- Современный движок для базы данных **postgresql**.
- **RedisStorage**, бот будет помнить историю сообщений даже после перезапуска.
- **aiogram-dialog** для удобного описания **пользовательского интерфейса**.### Установка
Установка довольно **проста**, вам понадобится склонировать данный **репозиторий** и установить **docker + docker-compose** на свой ПК.
Далее, создайте файл **.env** в корне проекта, и внесите туда следующее содержимое:
```env
API_TOKEN=<токен бота тут>POSTGRES_USER=cleanbot_user
POSTGRES_PASSWORD=<ваш пароль тут>
POSTGRES_DB=cleanbot_db
DB_HOST=db
DB_PORT=5432
DB_NAME=cleanbot_db
DB_USER=cleanbot_user
DB_PASS=<ваш пароль тут>
```Далее, соберите образ:
```shell
docker-compose up --build
```Выполните в контейнере **bot** команду
```shell
alembic revision --autogenerate -m "init"
```Для создания начальной миграции, для применения миграций выполняете команду:
```shell
alembic upgrade head
```Выключить бота:
```shell
docker-compose down -v
```