{"repo":"wakaree/aiogram_bot_template","free":true,"listed":false,"github":"https://github.com/wakaree/aiogram_bot_template","clone":"git clone https://github.com/wakaree/aiogram_bot_template.git","description":"Aiogram 3.x bot template using PostgreSQL (asyncpg) with SQLAlchemy + alembic.","language":"Python","stars":167,"topics":["aiogram-bot","aiogram-bot-template","aiogram3","telegram-bot","telegram-bot-template","fastapi"],"license":"MIT","category":"databases-storage","readme_excerpt":"aiogram bot template ⚙️ System dependencies - Python 3.12+ - Docker - docker-compose - make - uv 🐳 Quick Start with Docker compose - Rename .env.dist to .env and configure it - Rename docker-compose.example.yml to docker-compose.yml - Run make app-build command then make app-run to start the bot Use make to see all available commands 🔧 Development Setup environment Update database tables structure Make migration script: Run migrations: 🚀 Used technologies: - uv (an extremely fast Python package and project manager) - Aiogram 3.x (Telegram bot framework) - Dishka (async DI container) - FastAPI (best python web framework for building APIs) - PostgreSQL (persistent relational database) - SQLAlchemy (working with database from Python) - Alembic (lightweight database migration tool) - Redis (in-memory database for FSM and caching) - Project Fluent (modern localization system) 🏗️ Project structure Each Telegram update flows through Handler → Flow → Interactor → Presenter → View → Renderer : handlers only parse the update and call a flow; flows orchestrate interactors and presenters; interactors hold use-case logic and know nothing about Telegram; presenters build a View (text + keyboard + render mode); the renderer is the only place that actually calls the Bot API. Dependencies are wired with dishka and resolved via FromDishka[...] . Supporting top-level directories: - migrations/ — Alembic migration scripts - assets/ — static bot assets (e.g. commands.yml ) - scripts/ — dev/op","default_branch":null,"files":null,"tree":[],"storefront":"/r/wakaree","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/wakaree/aiogram_bot_template/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}