A CLI tool to scaffold FastAPI and LLM-ready Python project structures.
Project description
fastapi-bootstrapper
A modern CLI tool for instantly scaffolding production-ready FastAPI backend projects—with support for LLM (Large Language Model) integrations like OpenAI, Claude, Mistral, and Gemini.
🚀 Features
- Interactive CLI wizard: Walks you through naming, location, project type, logging, and requirements.
- LLM-ready: Instantly add stub integrations for OpenAI, Claude, Mistral, Gemini (auto-includes sample code and dependencies).
- Custom structure: Sets up all best-practice folders and main files—no
backend/nesting, everything is organized at the top level. - Virtual environment: Creates a fresh virtualenv for you.
- Requirements: Installs your dependencies; warns gracefully if any fail.
- Logging: Add (or skip) ready-to-use concurrent logging support.
- Clean code: Files are filled with high-quality Python boilerplate so you can get started right away.
📦 Installation
From PyPI
pip install fastapi-bootstrapper
🛠️ Usage
Run the following in your terminal:
fastapi-bootstrap
The CLI wizard will ask you:
-
Project name (e.g.
awesome-backend) -
Project location (any path; leave blank for current directory)
-
Project type:
- Normal FastAPI
- LLM FastAPI
- Simple FastAPI
-
Enable logging?
-
Extra requirements? (comma separated, e.g.
sqlalchemy, asyncpg) -
You’ll see a summary. Hit Enter to confirm.
After it finishes, your new project will look like this:
myproject/
app/
api/
core/
config/
logs/ # only if you selected logging
services/
llm/ # only for LLM projects
integrations/
db/
models/
main.py
requirements.txt
README.md
.gitignore
venv/
🧑💻 Example: Quickstart
fastapi-bootstrap
Enter project name: my-awesome-api
Enter full path where you want to create the project (leave blank for current directory):
Select project type:
1. normal fastapi
2. llm fastapi
3. simple fastapi
Enter option: 2
Enable logging? [y/n]: y
List extra requirements (comma separated, blank for none): sqlalchemy, python-dotenv
--- Summary ---
project_name: my-awesome-api
project_location: /your/path
project_type: llm fastapi
logging: True
requirements: ['sqlalchemy', 'python-dotenv']
Path: /your/path/my-awesome-api
--------------------
Press Enter to confirm and create the project...
🦾 What’s Included
-
Full FastAPI project tree (modular and ready for production)
-
.gitignore,README.md,requirements.txtgenerated -
Virtualenv set up at
venv/ -
For LLM FastAPI:
- All code stubs for OpenAI, Claude, Mistral, Gemini in
app/core/services/llm/
- All code stubs for OpenAI, Claude, Mistral, Gemini in
-
Logging support with rotating file handler (if enabled)
-
Auto-installed dependencies (with failure notice if any package fails)
✍️ Author
Chaithanya K cchaithanya83@gmail.com
🧩 Contributing
PRs and feature requests welcome!
💡 Tips
- Edit
requirements.txtand runsource venv/bin/activate(Linux/Mac) orvenv\Scripts\activate(Windows) to enter your environment. - Run
python main.pyoruvicorn main:app --reloadto start your FastAPI server. - For LLM features, add your API keys in an
.envfile as required.
Happy coding! 🚀
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 fastapi_bootstrapper-0.1.1.tar.gz.
File metadata
- Download URL: fastapi_bootstrapper-0.1.1.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6429cef84d511283e3e5064ff3113e6d50b6fc1a3cd15f22afc182eea407a3dc
|
|
| MD5 |
c50f80801a432e688ca52bd4e813cf7e
|
|
| BLAKE2b-256 |
7546328b416671f966e63377a7a05e0dd034d3a571fae1198b37a30011bf44a8
|
File details
Details for the file fastapi_bootstrapper-0.1.1-py3-none-any.whl.
File metadata
- Download URL: fastapi_bootstrapper-0.1.1-py3-none-any.whl
- Upload date:
- Size: 7.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d0fab14b51d86c70f0d58a0d9eb7668c2ba89ad84cb796bb0f5e5e977db09e3
|
|
| MD5 |
6680559b49f8c6f05d16ec79a423c074
|
|
| BLAKE2b-256 |
a03b30c35701a09c69d43c2c2e5b2219ef34d1c00f9aeaa7401a8d79a4393811
|