Skip to main content

CLI to quickly scaffold FastAPI and Flask projects with opinionated blueprints.

Project description

๐Ÿš€ BoilerPy

Lightning-fast FastAPI & Flask project scaffolding CLI

PyPI version Python Version License: MIT Downloads Code style: black

Installation โ€ข Quick Start โ€ข Templates โ€ข Documentation


๐ŸŽฏ Why BoilerPy?

Stop wasting time setting up the same project structure over and over. BoilerPy generates production-ready FastAPI and Flask projects in seconds with:

  • โœ… 5+ Professional Templates - API-only, Auth, SQL, MongoDB, CRM
  • โšก Lightning Fast - Generate projects in < 5 seconds
  • ๐ŸŽจ Clean Architecture - Industry best practices built-in
  • ๐Ÿ”ง Zero Configuration - Works out of the box
  • ๐Ÿ Python 3.9+ - Modern Python support

๐Ÿ“ฆ Installation

Using pipx (Recommended)

pipx install boilerpy

Using pip

pip install boilerpy

From source

git clone https://github.com/Faizgeeky/boilerpy.git
cd boilerpy
pip install -e .

๐Ÿš€ Quick Start

1. List available templates

bpy list

2. Create a new project

bpy init fastapi

3. Follow the interactive prompts

  • Select your template (1-5)
  • Enter project name
  • Done! Your project is ready ๐ŸŽ‰

Example

$ bpy init fastapi

============================================================
  Available FASTAPI Templates
============================================================

1. API Only
   Basic FastAPI project with routers and clean architecture

2. Authentication
   FastAPI with JWT authentication, user management

3. SQL (SQLAlchemy + PostgreSQL)
   FastAPI with SQLAlchemy, PostgreSQL, and Alembic migrations

Select template (1-5): 3
Enter project name: my-awesome-api

๐Ÿš€ Creating SQL project: my-awesome-api
โœ… Project created successfully!

๐Ÿ“š Templates

๐Ÿ”ท FastAPI Templates

1. API Only - Clean REST API

Perfect for microservices and REST APIs

app/
โ”œโ”€โ”€ main.py              # FastAPI application
โ”œโ”€โ”€ api/v1/
โ”‚   โ”œโ”€โ”€ router.py        # API router
โ”‚   โ””โ”€โ”€ endpoints/       # API endpoints
โ”œโ”€โ”€ core/
โ”‚   โ””โ”€โ”€ config.py        # Configuration
โ””โ”€โ”€ schemas/             # Pydantic models

2. Authentication - JWT Auth System

Production-ready authentication with JWT tokens

app/
โ”œโ”€โ”€ main.py
โ”œโ”€โ”€ api/v1/endpoints/
โ”‚   โ”œโ”€โ”€ auth.py          # Login, register
โ”‚   โ””โ”€โ”€ users.py         # User management
โ”œโ”€โ”€ core/
โ”‚   โ”œโ”€โ”€ security.py      # JWT utilities
โ”‚   โ””โ”€โ”€ dependencies.py  # Auth dependencies
โ””โ”€โ”€ schemas/
    โ”œโ”€โ”€ user.py
    โ””โ”€โ”€ token.py

3. SQL - SQLAlchemy + PostgreSQL

Full database setup with migrations

app/
โ”œโ”€โ”€ models/              # SQLAlchemy models
โ”œโ”€โ”€ crud/                # CRUD operations
โ”œโ”€โ”€ core/
โ”‚   โ””โ”€โ”€ database.py      # Database config
โ”œโ”€โ”€ alembic/             # Migrations
โ””โ”€โ”€ docker-compose.yml   # PostgreSQL setup

4. MongoDB - Motor Async Driver

MongoDB integration with async support

app/
โ”œโ”€โ”€ core/
โ”‚   โ””โ”€โ”€ database.py      # MongoDB connection
โ”œโ”€โ”€ models/              # MongoDB models
โ””โ”€โ”€ crud/                # Database operations

5. CRM - Complete Application

Full CRM with users, customers, products, orders

app/
โ”œโ”€โ”€ models/
โ”‚   โ”œโ”€โ”€ user.py
โ”‚   โ”œโ”€โ”€ customer.py
โ”‚   โ”œโ”€โ”€ product.py
โ”‚   โ””โ”€โ”€ order.py
โ”œโ”€โ”€ api/v1/endpoints/
โ”‚   โ”œโ”€โ”€ auth.py
โ”‚   โ”œโ”€โ”€ customers.py
โ”‚   โ””โ”€โ”€ orders.py
โ””โ”€โ”€ core/
    โ”œโ”€โ”€ database.py
    โ””โ”€โ”€ security.py

๐Ÿ”ถ Flask Templates

Coming soon!

๐ŸŽจ Features

  • ๐Ÿ—๏ธ Production-Ready - All templates follow industry best practices
  • ๐Ÿ“ Clean Structure - Organized, scalable architecture
  • ๐Ÿ” Security - JWT authentication, password hashing built-in
  • ๐Ÿ—„๏ธ Database Ready - SQLAlchemy, PostgreSQL, MongoDB support
  • ๐Ÿณ Docker Included - docker-compose.yml for databases
  • ๐Ÿ“ Type Hints - Full typing support with Pydantic
  • ๐Ÿงช Testing Ready - Structured for easy testing
  • ๐Ÿ“– Documentation - Comprehensive README in each project

๐Ÿ“– Documentation

After Creating a Project

cd my-awesome-api

# Create virtual environment
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Run the application
uvicorn app.main:app --reload

Visit http://localhost:8000/docs for API documentation.

Project Structure

Every generated project includes:

  • โœ… requirements.txt - All dependencies
  • โœ… .env.example - Environment variables template
  • โœ… .gitignore - Git ignore rules
  • โœ… README.md - Complete setup guide
  • โœ… docker-compose.yml - Database setup (SQL/MongoDB templates)

๐Ÿ› ๏ธ Development

Requirements

  • Python 3.9+
  • pip or pipx

Contributing

We welcome contributions! Please see CONTRIBUTING.md for details.

Building from Source

git clone https://github.com/Faizgeeky/boilerpy.git
cd boilerpy
python -m build

๐Ÿ“ License

MIT License - see LICENSE for details.

๐Ÿค Support

๐Ÿ™ Acknowledgments

Built with โค๏ธ by Faiz

Inspired by:

  • create-react-app
  • vue-cli
  • cookiecutter

โฌ† back to top

Made with โค๏ธ for the Python community

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

boilerpy-0.1.0.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

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

boilerpy-0.1.0-py3-none-any.whl (38.3 kB view details)

Uploaded Python 3

File details

Details for the file boilerpy-0.1.0.tar.gz.

File metadata

  • Download URL: boilerpy-0.1.0.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for boilerpy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 13cacf0ce98c4448afc457437ef5922b267039528cce16ce92d838a4913f5bea
MD5 5ce49a05f4b2cef524e4c359ab6aa1a8
BLAKE2b-256 862d7fb397c8b3368d7f64d87e4a4ad1109a6d17d01ed87e7afa7e40b63ad559

See more details on using hashes here.

Provenance

The following attestation bundles were made for boilerpy-0.1.0.tar.gz:

Publisher: publish.yml on Faizgeeky/boilerpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file boilerpy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: boilerpy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 38.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for boilerpy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ea8cc4c5081e5d3ce5fb5505753dd18ccb422984130b1fa617ddf03fcb9ce8d1
MD5 105dab85a64e7bb83a19bc70d6fb2320
BLAKE2b-256 0ee75b78565b2dd165eb7628ffcfa68265facbfd92be68dc10fb374e4d85e002

See more details on using hashes here.

Provenance

The following attestation bundles were made for boilerpy-0.1.0-py3-none-any.whl:

Publisher: publish.yml on Faizgeeky/boilerpy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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