Opinionated FastAPI + Aiogram project generator (FastGram template)
Project description
Fastogram
Opinionated FastAPI + Aiogram project generator — like django-admin startproject for FastGram.
Installation
pip install fastogram
Or with uv:
uv add fastogram
Usage
Create a new project:
fastogram new my-telegram-bot
This creates my-telegram-bot/ with the full FastGram template. Then:
cd my-telegram-bot
uv sync
# Edit .env with your TELEGRAM_BOT_TOKEN
python manage.py setup
python manage.py run --reload
Options
fastogram new my-bot # Create ./my-bot/
fastogram new . # Scaffold in current directory (ignores .venv)
fastogram new . --force # Scaffold in a non-empty current directory
fastogram new my-bot -d ~/code # Create ~/code/my-bot/
For maintainers: syncing the template
When you update FastGram (architecture changes, bug fixes, etc.), sync the template into the CLI so pip install fastogram users get the latest:
cd cli/FastoGram
python scripts/sync_template.py
Or with a custom FastGram path:
FASTGRAM_SOURCE=/path/to/FastGram python scripts/sync_template.py
The sync copies FastGram → src/fastogram/templates/fastgram/, excluding .git, .venv, and other generated files. Rebuild and publish a new fastogram release after syncing.
Publishing to PyPI
# 1. Create .pypi-token with your PyPI API token (from pypi.org/manage/account/token/)
echo "pypi-your-token-here" > .pypi-token
# 2. Publish (defaults to patch bump: 0.0.3 -> 0.0.4)
make publish
# Publish with a minor or major bump
make publish BUMP=minor
make publish BUMP=major
# Publish with an explicit version
make publish VERSION=1.2.3
.pypi-token is in .gitignore — it will never be committed.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastogram-0.0.5.tar.gz.
File metadata
- Download URL: fastogram-0.0.5.tar.gz
- Upload date:
- Size: 147.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
29b08665e17626031229ca2af2233319d3a5fcb7b643e775f979f163215dc4c9
|
|
| MD5 |
54562089f56163a088a64e63d1d385b0
|
|
| BLAKE2b-256 |
fc94eb3d95aaef6bbfc92632bee8df6435504336ab4c3ca5b5ddb2cd763fae2a
|
File details
Details for the file fastogram-0.0.5-py3-none-any.whl.
File metadata
- Download URL: fastogram-0.0.5-py3-none-any.whl
- Upload date:
- Size: 174.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
19566f17af7a99786c31399513f3b25c80a09035b4934cdc0d93616b728d5f71
|
|
| MD5 |
74ccad7f0e2be7830e9473c461a974e7
|
|
| BLAKE2b-256 |
6a706b506731bc395b731869f7e56d0b9c0cf9e48ded3975d9f8bc1661a9e3f9
|