fastapi-ip-manage
是一个使用 FastAPI 搭建的 IP 后台管理系统,作为前后端分离项目的后端部分。项目采用 RESTful 风格 API,并广泛使用了 FastAPI 的各种特性。这个系统不仅集成了 JWT, Pydantic, Pymongo, FastAPI-users, Loguru 等库,而且还包含了 PEP 8 自动检测和格式化脚本,适合作为练手项目或新项目的脚手架。
- FastAPI: 提供快速、高效的 API 开发。
- FastAPI Cache: 用于缓存处理。
- Loguru: 简化日志管理。
- Motor: 异步数据库驱动。
- FastAPI-users: 简化用户管理和认证。
- Isort, Autoflake, Flake8: 用于代码格式化和质量控制。
要在本地启动和运行这个项目,请按照以下步骤操作:
-
克隆仓库:
git clone https://github.com/your-github/fastapi-ip-manage.git
-
安装依赖:
pip install -r requirements.txt
-
创建环境变量文件并编辑
cp .env_sample .env
-
仅启动fastapi服务:
uvicorn app.main:app --reload
-
检查代码格式:
bash scripts/lint
-
自动pep8规范格式化代码:
bash scripts/format
-
使用docker-compose快速部署项目:
docker-compose up -d
感谢以下库和工具在 fastapi-ip-manage
项目中的支持和帮助:
- FastAPI: 用于构建高效、快速的 API。
- FastAPI Cache: 提供缓存机制,优化性能。
- Loguru: 简化的日志记录工具,提升开发体验。
- Motor: 异步 MongoDB 驱动程序。
- FastAPI-users: 用于用户认证和管理的工具。
- Isort: 代码排序工具,用于维护导入的一致性和清晰度。
- Autoflake: 用于移除未使用的导入和变量。
- Flake8 6.0.0: 代码风格和质量检查工具。
这些工具的集成不仅提高了开发效率,也确保了代码的可读性和质量。