CLI to quickly scaffold FastAPI and Flask projects with opinionated blueprints.
Project description
๐ BoilerPy
Lightning-fast FastAPI & Flask project scaffolding CLI
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
- ๐ Issues: GitHub Issues
- ๐ฌ Discussions: GitHub Discussions
- โญ Star us on GitHub: github.com/Faizgeeky/boilerpy
๐ Acknowledgments
Built with โค๏ธ by Faiz
Inspired by:
- create-react-app
- vue-cli
- cookiecutter
Made with โค๏ธ for the Python community
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 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13cacf0ce98c4448afc457437ef5922b267039528cce16ce92d838a4913f5bea
|
|
| MD5 |
5ce49a05f4b2cef524e4c359ab6aa1a8
|
|
| BLAKE2b-256 |
862d7fb397c8b3368d7f64d87e4a4ad1109a6d17d01ed87e7afa7e40b63ad559
|
Provenance
The following attestation bundles were made for boilerpy-0.1.0.tar.gz:
Publisher:
publish.yml on Faizgeeky/boilerpy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
boilerpy-0.1.0.tar.gz -
Subject digest:
13cacf0ce98c4448afc457437ef5922b267039528cce16ce92d838a4913f5bea - Sigstore transparency entry: 1114893559
- Sigstore integration time:
-
Permalink:
Faizgeeky/boilerpy@e56adaf708ebef812a8486547d7d0cf4e8ff6fd2 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Faizgeeky
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e56adaf708ebef812a8486547d7d0cf4e8ff6fd2 -
Trigger Event:
workflow_dispatch
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ea8cc4c5081e5d3ce5fb5505753dd18ccb422984130b1fa617ddf03fcb9ce8d1
|
|
| MD5 |
105dab85a64e7bb83a19bc70d6fb2320
|
|
| BLAKE2b-256 |
0ee75b78565b2dd165eb7628ffcfa68265facbfd92be68dc10fb374e4d85e002
|
Provenance
The following attestation bundles were made for boilerpy-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on Faizgeeky/boilerpy
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
boilerpy-0.1.0-py3-none-any.whl -
Subject digest:
ea8cc4c5081e5d3ce5fb5505753dd18ccb422984130b1fa617ddf03fcb9ce8d1 - Sigstore transparency entry: 1114893561
- Sigstore integration time:
-
Permalink:
Faizgeeky/boilerpy@e56adaf708ebef812a8486547d7d0cf4e8ff6fd2 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/Faizgeeky
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e56adaf708ebef812a8486547d7d0cf4e8ff6fd2 -
Trigger Event:
workflow_dispatch
-
Statement type: