A lightweight FastAPI starter generator with pluggable infrastructure, testing, and deployment templates.
Project description
Fastix
Fastix is a lightweight FastAPI project lifecycle CLI for developers who want a clean starting point, guided project setup, and repeatable scaffolding.
Compatibility
Fastix targets:
- Python
>=3.10 - Linux, macOS, and Windows
- pure-Python wheel installs with no compiled runtime dependency owned by Fastix itself
Notes:
- Python 3.10 uses
tomliautomatically for TOML parsing - Python 3.11+ uses the standard-library
tomllib - interactive prompts are optional and installed only with
fastix[interactive]
Lightweight By Default
Base install keeps runtime dependencies small:
typerrichjinja2pydantictomlionly on Python 3.10
Interactive prompt tooling is optional:
pip install fastix
pip install "fastix[interactive]"
What Fastix Does
fastix init works like an architecture wizard:
- choose
monolithormicroservices - see supported tooling options during setup
- start with sensible defaults already selected
- unselect anything you do not want
- generate a cleaner project structure with shared API response contracts
Interactive Init
fastix init
The wizard guides users through:
- architecture choice
- service names for microservices
- service communication (
httporgrpc) - optional Dapr support
- database and Alembic migrations
- Redis / queue / worker options
- containerization and orchestration
- project essentials such as
.gitignore,README.md,.editorconfig, tests, and shared responses
Default-Selected Essentials
Fastix shows baseline project files and developer defaults in the wizard and preselects them for convenience:
.gitignoreREADME.md.editorconfig.env.example- test scaffolding
- API versioning
- health checks
- shared response contracts
Users can unselect these before generation.
Generated Structure
Monolith
app/
api/
core/
db/
models/
schemas/
services/
shared/
Microservices Workspace
services/
gateway/
users/
shared/
infra/
Each generated microservice now lives directly under services/<name>/ instead of the older services/<name>_service/ pattern.
Shared API Responses
Generated projects include standard response contracts so teams can keep a consistent API format from day one:
- success response
- error response
- paginated response
- shared error detail model
Migrations
For PostgreSQL and MySQL projects, Fastix can generate Alembic scaffolding during init. The option is visible in the wizard and enabled by default for SQL databases.
Example Non-Interactive Usage
fastix init inventory_api \
--arch microservices \
--services gateway,orders \
--protocol grpc \
--native-grpc \
--dapr \
--db postgres \
--migrations \
--container docker \
--k8s helm
Lifecycle Commands
fastix inspect .
fastix add-module dapr --path .
fastix add-module container.podman --path .
fastix list-modules
Compatibility Validation
This repository now includes automated package checks for:
- wheel/sdist build validation
- install smoke tests on Linux, macOS, and Windows
- Python 3.10, 3.11, 3.12, 3.13, and 3.14
- base and
interactiveinstalls
Release Checks
PYTHONPATH=src ./.venv/bin/python -m pytest -q -p no:cacheprovider
./.venv/bin/python -m build --no-isolation
./.venv/bin/python -m twine check dist/*
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 fastix-0.1.5.tar.gz.
File metadata
- Download URL: fastix-0.1.5.tar.gz
- Upload date:
- Size: 51.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8cd6b036a901c20a1cd33c4f2252757d4fe019264d92e5c054a4356a135c6e0b
|
|
| MD5 |
56df5586d873d5e722a36db6e4ba7628
|
|
| BLAKE2b-256 |
f18b6160edcb50902fe4722863a2f482e4cab0cb9afbf395fc7863d7c7748f63
|
File details
Details for the file fastix-0.1.5-py3-none-any.whl.
File metadata
- Download URL: fastix-0.1.5-py3-none-any.whl
- Upload date:
- Size: 102.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
31398cfc0ec095ea0707147a2d1e5b5bb7c3ca869dff7fdbce3b6bc17f51532f
|
|
| MD5 |
9a9168eb316bd6f21cdc2f11af7ce311
|
|
| BLAKE2b-256 |
d118234d19a2216d52cd902a6f3c8cfe2e290b3de78acc3f25c9448e889bea06
|