A professional Python project bootstrapper CLI supporting multiple frameworks.
Project description
setupci
setupci is an interactive Python CLI tool to bootstrap project structures for various Python frameworks. Stop setting up boilerplate โ just run one command and start coding.
๐ฆ Installation
pip install setupci
๐ Usage
Navigate to your project directory and run:
setupci init .
You will be asked:
- Which framework? โ FastAPI, Flask, Django, or General Python
- Which project type? โ Backend (professional) or Simple (basic)
That's it! Your project structure will be generated instantly.
๐๏ธ Generated Structures
โก FastAPI โ Backend
app/
โโโ main.py # FastAPI app + CORS + routers
โโโ core/config.py # Pydantic settings (reads from .env)
โโโ api/
โ โโโ router.py
โ โโโ endpoints/items.py # CRUD routes
โโโ models/item.py # SQLAlchemy model
โโโ schemas/item.py # Pydantic schemas
โโโ db/session.py # Database engine + session
requirements.txt
Dockerfile
.env.example
๐ถ๏ธ Flask โ Backend
app/
โโโ __init__.py # Application factory
โโโ config.py # Config class
โโโ api/items.py # Blueprint with CRUD routes
โโโ models/item.py # SQLAlchemy model
wsgi.py
requirements.txt
Dockerfile
.env.example
๐ธ Django โ Backend
config/
โโโ settings.py # Uses django-environ for .env
โโโ urls.py
โโโ wsgi.py
โโโ asgi.py
apps/
โโโ items/ # Sample DRF CRUD app
โโโ models.py
โโโ views.py
โโโ serializers.py
โโโ urls.py
manage.py
requirements.txt
Dockerfile
.env.example
๐ General Python โ Backend
src/
โโโ __init__.py
โโโ main.py
tests/
โโโ test_main.py
pyproject.toml
README.md
๐ค Contributing
Contributions are welcome! See CONTRIBUTING.md to get started.
๐ License
This project is licensed under the MIT License.
๐ Links
- ๐ GitHub: github.com/syed-mujtaba-stack/setupci
- ๐ฆ PyPI: pypi.org/project/setupci
- ๐ Issues: github.com/syed-mujtaba-stack/setupci/issues
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
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 setupci-0.1.1.tar.gz.
File metadata
- Download URL: setupci-0.1.1.tar.gz
- Upload date:
- Size: 15.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11ebdb0f60cb8c8f8eb552a051721c13a3fb50bc1687d2bb1be1675c90bf2ab0
|
|
| MD5 |
982583e3811d2bb506cceb6521813057
|
|
| BLAKE2b-256 |
ec60b6151bc29811b5147796935306487f762a962619febd48ca6fab1cee0421
|
File details
Details for the file setupci-0.1.1-py3-none-any.whl.
File metadata
- Download URL: setupci-0.1.1-py3-none-any.whl
- Upload date:
- Size: 38.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68256693f7b07384bc1de8f276f75618271b5b7cd5b7ce5f1c25605399c02286
|
|
| MD5 |
c77e01bd1f1753c5262b711ac0e86df7
|
|
| BLAKE2b-256 |
baf060f2d2dab29faeafc30138fa0f342f1dcf717a9d6f744e9f8c5934f2c51b
|