Skip to main content

A CLI tool to scaffold FastAPI projects with CRUD and schema support

Project description

FasterAPI banner

FasterAPI

Scaffold FastAPI APIs faster with a focused CLI for backend teams.

PyPI Version Python Versions License Monthly Downloads Last Commit

Quick Start · Demo · Command Reference · Contributing

Why FasterAPI

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

Demo

FasterAPI CLI demo

CLI Preview Screens

Generating schema CRUD service and route

FasterAPI help output screenshot

Installation

pip install nats-fasterapi

Upgrade:

fasterapi update

Quick Start

# 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 mount

Run the app in development mode:

fasterapi run-d

Command Reference

Command Purpose
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-token-repo [roles...] Generate token repository for roles
make-token-deps Generate token dependency utilities
mount Mount routes into main.py
run-d Run dev server (uvicorn main:app --reload)
update Upgrade FasterAPI CLI

Route Versioning Modes

  • highest-number
  • latest-modified

Token Repo Defaults

If no roles are provided to make-token-repo, defaults are:

admin, user, staff, guest-editor

Typical Workflow

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

Roadmap

  • fasterapi new myproject full project bootstrap
  • SQLAlchemy repository generators (PostgreSQL/MySQL)
  • Config-driven scaffolding via fasterapi.yaml
  • CI/CD template generation
  • Better Docker/Docker Compose scaffolding
  • Shell autocompletion support

Contributing

git clone https://github.com/nathanieluriri/faster-api.git
cd faster-api
pip install -e .
pytest

Issues and pull requests are welcome.

License

Licensed under the MIT License.

© 2026 Nathaniel Uriri

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

nats_fasterapi-0.2.91.tar.gz (66.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nats_fasterapi-0.2.91-py3-none-any.whl (100.1 kB view details)

Uploaded Python 3

File details

Details for the file nats_fasterapi-0.2.91.tar.gz.

File metadata

  • Download URL: nats_fasterapi-0.2.91.tar.gz
  • Upload date:
  • Size: 66.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for nats_fasterapi-0.2.91.tar.gz
Algorithm Hash digest
SHA256 04863b1eae5c480c705a4dca60176f656a424b9756658c3d4e7c9765ca8620b2
MD5 d14163d6ccc04502bbbc80fadf458e5d
BLAKE2b-256 6fe40f81e50bfd594560e4ac5fd70f38d6c3fcfeb9cf7236976131a298237f94

See more details on using hashes here.

File details

Details for the file nats_fasterapi-0.2.91-py3-none-any.whl.

File metadata

  • Download URL: nats_fasterapi-0.2.91-py3-none-any.whl
  • Upload date:
  • Size: 100.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.10

File hashes

Hashes for nats_fasterapi-0.2.91-py3-none-any.whl
Algorithm Hash digest
SHA256 dfdb4730d34cb867298b8265c387dc8e92c1a1c698e85cf1e0addbcc3f169e43
MD5 f4b3526d371977aaeecad7c4444e5040
BLAKE2b-256 463ff749dfcc70fc053d65a3a81c1058414dffe5f42ba52c9ba6a3a8d0d3287c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page