CLI tool for generating FastAPI projects
Project description
๐ FastAPI Starter CLI
A CLI tool for generating FastAPI projects with predefined structure and automatic configuration.
โจ Main Features
๐ Project Generation
- Create new project with predefined structure
- Initialize project in existing directory
- Automatic file and directory generation
๐ข๏ธ Multi-Database Support
- PostgreSQL
- MySQL/MariaDB
- SQL Server
- Oracle
- Automatic connection configuration
โ๏ธ Automatic Configuration
- Python virtual environment
- Custom requirements.txt
- Environment variables (.env)
- Pydantic Settings
- SQLModel ORM
๐ง Additional Features
- Alembic migrations (optional)
- Base Repository for CRUD (optional)
- Modular and scalable structure
- FastAPI best practices integration
๐ Main Commands
# Create new project
fastapi start create-project
# Initialize in current directory
fastapi start init-project
# Show version
fastapi cli version
๐ฆ Generated Structure
project/
โโโ src/
โ โโโ controller/ # API Controllers
โ โ โโโ __init__.py
โ โโโ service/ # Business Logic
โ โ โโโ __init__.py
โ โโโ repository/ # Data Access
โ โ โโโ __init__.py
โ โโโ model/ # Domain Models
โ โ โโโ entity/ # SQLModel Entities
โ โ โ โโโ __init__.py
โ โ โโโ enum/ # Enumerations
โ โ โ โโโ __init__.py
โ โ โโโ __init__.py
โ โโโ dto/ # Data Transfer Objects
โ โ โโโ __init__.py
โ โโโ config/ # Configuration
โ โ โโโ settings.py
โ โ โโโ __init__.py
โ โโโ db/ # Database Config
โ โ โโโ database.py
โ โ โโโ __init__.py
โ โโโ main.py # Entry Point
โ โโโ __init__.py
โโโ test/ # Unit Tests
โ โโโ __init__.py
โโโ .env # Environment Variables
โโโ requirements.txt # Dependencies
โโโ README.md # Documentation
๐ฆ Optional Packages
- Alembic - SQL Migrations
- SQLAlchemy Base Repository - Base CRUD
โ๏ธ Requirements
- Python 3.8+
- pip (package manager)
- Compatible database installed
๐ Installation
pip install fastapi-starter-cli
๐ License
MIT License
๐ค Author
betooo
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_starter_cli-0.1.0.dev0.tar.gz.
File metadata
- Download URL: fastapi_starter_cli-0.1.0.dev0.tar.gz
- Upload date:
- Size: 15.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7580d1edf0e0a53ef94cdcc4297637f62d9489eb986ce7aabd6b9a9f26552855
|
|
| MD5 |
e98e16664efb11d973c0fef4a8dcfb0c
|
|
| BLAKE2b-256 |
5d3dabc44716ef3219fb0ded97085b02a438e46f42410a3d06ba9b48cba96aa3
|
File details
Details for the file fastapi_starter_cli-0.1.0.dev0-py3-none-any.whl.
File metadata
- Download URL: fastapi_starter_cli-0.1.0.dev0-py3-none-any.whl
- Upload date:
- Size: 23.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.11.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d7264108e027299caca68577d4e012d9e7c53317ba27b739ae881f2c4da797e
|
|
| MD5 |
de83d9326f1baf12ca839d7f5ccec808
|
|
| BLAKE2b-256 |
378b259030913df6f7c0760ec8b845d53b83931c1181fd6d9f0816ee13a18943
|