- Python 3.11+
- Docker
- docker-compose
- make
- poetry
Via Docker
- Rename
.env.dist
to.env
and configure it - Rename
docker-compose.example.yml
todocker-compose.yml
- Run
make app-build
command thenmake app-run
to start the bot
- Configure and start PostgreSQL
- Configure and start Redis (» Read more)
- Rename
.env.example
to.env
and configure it - Run database migrations with
make migrate
command - Configure
telegram-bot.service
(» Read more)
poetry install
Make migration script:
make migration message=MESSAGE_WHAT_THE_MIGRATION_DOES
Run migrations:
make migrate
- Parse new used localization keys to update translations files
(
make i18n locale=TRANSLATION_LOCALE
) - Write new translations in
.ftl
files bytranslations/TRANSLATION_LOCALE
- Restart the bot
- Aiogram 3.x (Telegram bot framework)
- PostgreSQL (database)
- SQLAlchemy (working with database from Python)
- Alembic (lightweight database migration tool)
- Redis (in-memory data storage for FSM and caching)
- Project Fluent (modern localization system)