FastAPI 项目模板初始化工具
Project description
MsPro - FastAPI 异步项目通用脚手架
MsPro 是一个基于 FastAPI 异步框架 的通用项目脚手架,旨在帮助开发者快速构建具备健壮架构和可扩展性的后端服务。它内置标准开发模块(CRUD、数据模型、路由、数据结构)与企业级最佳实践,让你从繁杂的基础构建中解放出来,专注于业务逻辑。
✨ 项目亮点
- 🚀 异步架构:基于 FastAPI 异步框架,支持高并发处理。
- 🧱 模块化结构:标准化目录,包含
crud/、models/、routes/、schemas/等核心模块。 - 🔒 JWT 鉴权体系:内置安全的 Token 授权与用户认证机制。
- 🧬 SQLModel 数据建模:采用 SQLModel 统一 ORM 模型与 Pydantic Schema。
- 📦 Pydantic V2.0 支持:新一代数据校验体系,更快更强。
- 📊 日志跟踪系统:基于 Python
logging优化配置,便于调试和生产环境日志分析。 - ⚙️ 代码生成器:基于模型定义,可一键生成整套 CRUD + Routes + Schemas。
- 🛠️ 管理工具脚本:集成本地测试、开发部署、数据库初始化等一键管理命令。
📂 项目结构总览
MsPro/
├── alembic/ # 数据库升级/迁移
├── app/
│ ├── crud/ # CURD 操作
│ ├── models/ # SQLModel 模型定义
│ ├── routes/ # 路由入口
│ ├── schemas/ # Pydantic 数据结构
│ ├── tasks/ # 异步任务调度
│ ├── utils/ # 工具函数
│ └── main.py # FastAPI 应用入口
├── logs/ # 日志目录
├── module_generator.py # 模型生成脚本
├── manage.sh # 本地/部署环境一键控制脚本
├── .env # 环境变量配置
├── requirements.txt # 依赖列表
└── README.md
📦 安装方式
方式一:通过 pip 安装并初始化项目
pip install mspro-python
mspro-init my_project
这将会在当前目录下生成名为 my_project/ 的完整项目脚手架。
🔧 使用指南
- 安装依赖:
cd my_project
python -m venv venv
./manage.sh setup
- 启动开发环境:
python app/main.py
# 或使用 manage.sh 提供的一键启动脚本
./manage.sh test
- 使用
module_generator.py自动生成模块:
python module_generator.py User
- 生产环境部署/运维:
# 在生产环境项目目录下
# 部署
./manage.sh build
# 运维
./manage.sh start/stop/restart/upgrade
📚 未来规划(TODO)
- 增加部署 Dockerfile 和 CI/CD 支持
- 提供 PostgreSQL、SQLite 切换配置
🧑💻 作者
由 [JENA] 设计与维护。欢迎提交 issue 与 PR 一起共建开源生态。
📄 License
本项目遵循 MIT License,详见 LICENSE 文件。
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
mspro_python-0.1.1.tar.gz
(68.0 kB
view details)
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 mspro_python-0.1.1.tar.gz.
File metadata
- Download URL: mspro_python-0.1.1.tar.gz
- Upload date:
- Size: 68.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
574d776121fe3a5bbfe3bf2483582215a5b6f16e031233e36511a1dc4ef15b13
|
|
| MD5 |
fa5b865efd7b5e429ce93460a53e87d4
|
|
| BLAKE2b-256 |
9331e17a62c945b1cca3c8d9f23ff2240a92ba18f34e19ef57ca4cd19c95c309
|
File details
Details for the file mspro_python-0.1.1-py3-none-any.whl.
File metadata
- Download URL: mspro_python-0.1.1-py3-none-any.whl
- Upload date:
- Size: 88.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7d30d2de24d62748fbfca1d45474c7ea4b643bb7160eadec9704ffc0133d85f8
|
|
| MD5 |
f42ce9e9ffef0e6d565ed118e492a921
|
|
| BLAKE2b-256 |
307085f13edb8a74ee4243c64cdb1e12094dd1e968bed06d63d47baa55cd9dfd
|