nats-fasterapi helps you skip repetitive setup and move straight to business logic.
- Generate Pydantic schemas with one command
- Generate CRUD repositories and service layers
- Generate versioned FastAPI routes quickly
- Generate token repository and auth dependency utilities
- Auto-mount routes into
main.py - Works in interactive and automation-friendly flows
pip install nats-fasterapiUpgrade:
fasterapi update# 1) Create a schema
fasterapi make-schema user
# 2) Generate repository and service
fasterapi make-crud user
fasterapi make-service user
# 3) Generate a versioned route
fasterapi make-route user --version-mode highest-number
# 4) Mount routes into main.py
fasterapi mountRun the app in development mode:
fasterapi run-d| Command | Purpose |
|---|---|
new <name> |
Create a new project in a new folder |
new-here |
Scaffold a new project in the current folder |
make-schema <name> |
Generate a Pydantic schema |
make-crud <name> |
Generate CRUD repository functions |
make-service <name> |
Generate service layer template |
make-route <name> [--version-mode ...] |
Generate route files with API versioning |
make-account <name> |
Clone the user account scaffold into a new role module |
make-token-repo [roles...] |
Generate token repository for roles |
split-user [--force] |
Interactively split user into custom non-admin roles |
unsplit-user [--force] |
Collapse split custom roles back into canonical user |
make-token-deps |
Generate token dependency utilities |
mount |
Mount routes into main.py |
email add-template |
Interactively add a built-in email template example |
email mount |
Mount templates from email_templates/ into the email singleton |
email mount-custom |
Move templates from custom_templates/ and mount them |
run-d |
Run dev server (uvicorn main:app --reload) |
update |
Upgrade FasterAPI CLI |
fasterapi new <name>creates a new directory (./<name>) and scaffolds the project inside it.fasterapi new-herescaffolds directly into your current directory (./) without creating a new folder.new-hereis safety-checked and will stop if template paths already exist in the current directory.
highest-numberlatest-modified
If no roles are provided to make-token-repo, defaults are:
admin, user
fasterapi email add-template first asks what kind of template you need, then shows available examples.
Built-in examples (10):
changing-passwordinvitationnew-signinotprevokingwelcomepassword-resetemail-verificationreceiptaccount-deactivated
Then mount templates with:
fasterapi email mountFor custom files placed in custom_templates/:
fasterapi email mount-customIf mounting fails, check email_mount_errors.log in the project root.
fasterapi make-schema product
fasterapi make-crud product
fasterapi make-service product
fasterapi make-route product --version-mode latest-modified
fasterapi mount
fasterapi run-d- Improve
newandnew-herebootstrap customization - SQLAlchemy repository generators (PostgreSQL/MySQL)
- Config-driven scaffolding via
fasterapi.yaml - CI/CD template generation
- Better Docker/Docker Compose scaffolding
- Shell autocompletion support
git clone https://github.com/nathanieluriri/faster-api.git
cd faster-api
pip install -e .
pytestIssues and pull requests are welcome.
Licensed under the MIT License.
© 2026 Nathaniel Uriri

