A CLI tool to scaffold Flask web apps and APIs
Project description
Forge My Flask (FMF)
Forge My Flask (FMF) is a lightweight CLI tool that scaffolds Flask projects in seconds.
It helps you quickly bootstrap Flask web applications or Flask API projects using a clean and practical project structure.
FMF is designed to be beginner friendly while still following patterns used in real Flask projects.
Features
- Create Flask web applications with templates and static files
- Create Flask API projects using blueprints
- Clean and consistent project structure
- No configuration required
- Works on Windows, Linux, and macOS
- Simple interactive CLI
Project Types
Web App
Generates a Flask project with:
app.pytemplates/static/requirements.txt
Best suited for traditional Flask applications that use HTML templates.
API
Generates a Flask API project with:
- Application factory pattern
- Blueprint based routing
- Example health endpoint
- Utility helpers for JSON responses
requirements.txt
Best suited for REST APIs and backend services.
Installation
PyPI release coming soon.
For now, clone the repository:
git clone https://github.com/Sparkleeop/Forge-my-FLASK.git
cd forge-my-flask
Run the CLI:
python app.py
Usage
When you start FMF, you will be prompted to select a project type:
Forge My Flask (FMF)
1. API Project
2. WebApp Project
Follow the prompts and enter a project name. FMF will generate the project structure automatically.
Example Output
Web App Structure
my_web_app/
├── app.py
├── requirements.txt
├── templates/
│ └── index.html
└── static/
└── style.css
API Structure
my_api/
├── app.py
├── config.py
├── requirements.txt
├── routes/
│ ├── __init__.py
│ └── health.py
└── utils/
└── response.py
Why FMF
Flask provides flexibility, but that flexibility often leads to inconsistent project layouts and repeated boilerplate.
FMF solves this by providing a simple and consistent starting point that can be extended as projects grow.
Roadmap
Planned improvements include:
- Non interactive CLI commands
- Optional database setup
- Authentication templates
- Environment based configuration
Contributing
Contributions are welcome.
If you find a bug or have a suggestion, feel free to open an issue or submit a pull request.
License
MIT License
Author
Built by Sparklee
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 forge_my_flask-0.1.0.tar.gz.
File metadata
- Download URL: forge_my_flask-0.1.0.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
49ec8d53ab4a28b936198d818f11aabcc10466e57836923d1d857be864c31bfe
|
|
| MD5 |
d80fd812f7d9d6575f3b253bec54500e
|
|
| BLAKE2b-256 |
562218b9abcf436e18b864bffa538420049d57352ec3049c1b875d96f34d83d8
|
File details
Details for the file forge_my_flask-0.1.0-py3-none-any.whl.
File metadata
- Download URL: forge_my_flask-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d763ac8086a7aa901cfd67494da41ade7ad387800d38cdbb6c21d7c695f3149
|
|
| MD5 |
7f40de9e2c265222bfe5454b756863bc
|
|
| BLAKE2b-256 |
5dc1928e5ee7931010099b1cd858920df1052e10ecbe8aa4fb3cf9971313f83e
|