Skip to main content

Production-grade FastAPI project generator with enterprise features

Project description

"""

create-fastapi-boilerplate

Production-grade FastAPI project generator with enterprise features.

Features

JWT Authentication - OAuth2 with access & refresh tokens, RBAC
Async SQLAlchemy 2.0 - PostgreSQL with full async support
Redis Rate Limiting - Intelligent rate limiting per user/IP
OpenTelemetry - Distributed tracing with Jaeger
Prometheus Metrics - Production-ready monitoring
Docker & Compose - Complete containerization
Full Test Suite - pytest with async support
CI/CD Pipeline - GitHub Actions ready
Code Quality - Ruff, MyPy, pre-commit hooks

Installation

pip install create-fastapi-boilerplate

Or with pipx (recommended):

pipx install create-fastapi-boilerplate

Usage

Create a new FastAPI project:

create-fastapi-boilerplate my-awesome-api
cd my-awesome-api
make compose-up

That's it! Your FastAPI app is now running at http://localhost:8000

Options

create-fastapi-boilerplate --help

Options:
  project_name          Name of your project
  --output-dir, -o      Output directory (default: current directory)
  --no-git              Skip git initialization
  --no-install          Skip dependency installation
  --version, -v         Show version

What You Get

my-awesome-api/
├── app/                    # Application code
│   ├── api/               # API routes
│   ├── core/              # Config, security
│   ├── models/            # Database models
│   ├── schemas/           # Pydantic schemas
│   └── services/          # Business logic
├── tests/                 # Test suite
├── migrations/            # Alembic migrations
├── docker-compose.yml     # Services setup
├── Dockerfile             # Multi-stage build
├── Makefile               # Dev commands
└── .github/workflows/     # CI/CD

Quick Start

# Start with Docker (recommended)
make compose-up

# OR run locally
make install          # Install dependencies
make migrate          # Run migrations
make dev              # Start dev server

# Run tests
make test

# Code quality
make lint
make format
make typecheck

API Endpoints

  • POST /api/v1/auth/register - Register user
  • POST /api/v1/auth/login - Login
  • GET /api/v1/users/me - Get current user
  • GET /health - Health check
  • GET /docs - OpenAPI docs

Requirements

  • Python 3.8+
  • Git
  • Docker (optional, but recommended)

Default Credentials

⚠️ Change these in production!

  • Email: admin@example.com
  • Password: admin123

Documentation

Visit the generated project for complete documentation:

  • README.md - Full documentation
  • SETUP.md - Setup guide
  • CONTRIBUTING.md - Contribution guidelines

Template Repository

This tool clones from: https://github.com/parth1618/fastapi-boilerplate

Support

License

MIT License - See LICENSE file

Contributing

Contributions welcome! Please see CONTRIBUTING.md


Made with ❤️ by Parth Joshi """

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

create_fastapi_boilerplate-1.0.0.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

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

create_fastapi_boilerplate-1.0.0-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file create_fastapi_boilerplate-1.0.0.tar.gz.

File metadata

File hashes

Hashes for create_fastapi_boilerplate-1.0.0.tar.gz
Algorithm Hash digest
SHA256 f9c756d165aed31120f5466bde16b9608315e3855240299f43f7f6c28f7e3577
MD5 1ffc7902cf831e8d05411f0669f4b5b8
BLAKE2b-256 da104668b417d7393153841742f3220dcf43878175f5114fa05a699ff9fa3700

See more details on using hashes here.

File details

Details for the file create_fastapi_boilerplate-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for create_fastapi_boilerplate-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 183026c60d558581993470ab331aebe9d7e7b42fed04067b13f24ec36da46e2d
MD5 f0dcc32e56fb4609b1dc855f43700183
BLAKE2b-256 dddc096ff17dcf5829906c1db898a3e0559ea720578eb4c4505cb0f69c376c9a

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