Scaffold FastAPI projects in seconds
Project description
A CLI scaffold tool for FastAPI projects.
Stop copy-pasting project structures. One command, few questions
and your FastAPI project is scaffolded, installed, and ready to run.
No tutorial bloat. No manual setup. Just open your editor and start building.
uvx fastapi-seed init my-project # scaffold into new folder
uvx fastapi-seed init . # scaffold into current folder
Install
# recommended — no install needed
uvx fastapi-seed init my-project
# or install globally
pip install fastapi-seed
uv add fastapi-seed
What you get
Answer 5 questions:
1. Project name?
2. Setup type? Minimal / Advanced
3. Set up Docker? Yes / No
4. Which database? PostgreSQL / SQLite / None (only if Docker = Yes)
5. Load testing? Yes / No
A fully structured project is generated and dependencies are installed automatically via uv sync.
Always included
my-project/
├── app/
│ ├── main.py ← clean, minimal (~15 lines)
│ ├── routers/health.py ← health check endpoint
│ ├── schemas/
│ ├── services/
│ └── core/
├── tests/test_main.py
├── .env + .env.example
├── Makefile
├── pyproject.toml ← ruff + pytest configured
└── README.md
Advanced setup adds
app/core/config.py ← pydantic-settings config
app/core/logger.py ← structured logging
.github/workflows/ci.yml ← ruff + pytest on every PR
.pre-commit-config.yaml ← ruff runs before every commit
Docker + database adds
Dockerfile ← single stage (minimal) / multi-stage (advanced)
docker-compose.yml ← app + db service pre-wired
app/core/db.py ← SQLModel session + engine
Load testing adds
tests/load/locustfile.py ← Locust hitting health endpoint
Why fastapi-seed?
| fastapi-seed | others | |
|---|---|---|
| Package manager | uv |
pip |
| main.py | 15 lines, clean | 100+ lines of tutorial code |
| Load testing | ✓ Locust included | ✗ |
| Complexity levels | Minimal / Advanced | one size fits all |
| Docker + DB | pre-wired, just works | manual setup |
| CI/CD | GitHub Actions included | ✗ |
| Interactive UX | arrow-key prompts (like Vite) | basic input() |
Generated project commands
make dev # uv run uvicorn app.main:app --reload
make test # uv run pytest
make lint # uv run ruff check .
make format # uv run ruff format .
make docker-up # docker compose up --build
make load-test # uv run locust
License
MIT
Project details
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 fastapi_seed-0.1.4.tar.gz.
File metadata
- Download URL: fastapi_seed-0.1.4.tar.gz
- Upload date:
- Size: 12.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53c8e1f7462615ef75a4c0f547958535557560cb28c285a1e827fc5a02c72ee6
|
|
| MD5 |
4a7a4df8bf9566c7d0b2a4db367c8633
|
|
| BLAKE2b-256 |
8c3b62ea7655efde03464e3281722e25f26889f7dc97b5b62d3d0c0392446207
|
File details
Details for the file fastapi_seed-0.1.4-py3-none-any.whl.
File metadata
- Download URL: fastapi_seed-0.1.4-py3-none-any.whl
- Upload date:
- Size: 17.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83917320f9ce3251977afab039df9f03942fad290673b756e08ae08db586f900
|
|
| MD5 |
918af341dd698b345d554b52e99c373a
|
|
| BLAKE2b-256 |
8a8cd7c015e31b8f3ecaf1c6e09d21032c9b8069123743313bf8017115dd62f0
|