Skip to content

πŸš€ Copier Template for Telegram Bot using Aiogram, Postgres, Redis, Docker, Coolify Ready

License

Notifications You must be signed in to change notification settings

TimNekk/copier-telegram-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

94 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Telegram Bot Template

✨ Features

Built with Copier, this template lets you toggle features during setup - choose what you need and generate files instantly! Ready for Docker 🐳 and Coolify ☁️ deployment.

Core Infrastructure

  • Docker Compose 🐳 Launch bot + services with one command
  • Python 3.9–3.13 🐍 Choose your Python version easily
  • uv πŸš€ Fast dependency management powered by Rust
  • Poetry πŸ“¦ Manage dependencies safely with virtual environments
  • pip πŸ“œ Classic Python package installer

Telegram Bot Framework

  • Aiogram ⚑ Modern async bot framework with state management
  • Aiogram Dialog πŸ–ΌοΈ Create menus and interactive interfaces
  • Redis ❀️ Keep bot data safe between restarts

Database & ORM

  • PostgreSQL 🐘 Powerful database for complex projects
  • SQLAlchemy πŸ› οΈ Work with databases using Python code
  • Alembic ⏳ Track and apply database changes easily

Middlewares

Tooling

  • Pydantic Settings βœ… Safe config management with type checking
  • Dynaconf βš™οΈ Configs for dev/test/prod environments
  • Ruff πŸͺΆ Super-fast code linting and cleanup
  • Justfile πŸͺ„ Short commands for complex tasks
  • Cache Decorator ⚑ Speed up functions with Redis caching

Roadmap πŸ—ΊοΈ

Help shape the future! Planned improvements:

Got ideas? Star ⭐ the repo or open an issue to collaborate! πŸš€

⭐ Star History

Star History Chart

πŸ‘· Contributing

First off, thanks for taking the time to contribute! Contributions are what makes the open-source community such an amazing place to learn, inspire, and create. Any contributions you make will benefit everybody else and are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork this repository
  2. Create a branch
  3. Commit your changes
  4. Push your commits to the branch
  5. Submit a pull request

πŸ“ License

Distributed under the Apache License 2.0. See LICENSE for more information.