# fastapi-template **Repository Path**: bamboostrip/fastapi-template ## Basic Information - **Project Name**: fastapi-template - **Description**: 为解决项目入门难题而编写的基础模板,适合 FastAPI 初学者快速上手。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-18 - **Last Updated**: 2025-07-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FastAPI 项目基础模板 [🇺🇸 English Documentation](README.md) | 🇨🇳 中文 本项目是作者在学习 FastAPI 后,为解决项目入门难题而编写的基础模板,适合 FastAPI 初学者快速上手。 ## 项目简介 - 使用 [uv](https://github.com/astral-sh/uv) 进行依赖管理和运行,推荐使用 `uv sync` 安装依赖。 - 通过 `uv run main.py` 启动项目。 - 支持 Docker 容器化开发,已准备好相关 Dockerfile 和 docker-compose 配置。 - 项目内置 FastAPI 开发常用的基础结构和模板。 - 集成 SQLAlchemy 作为 ORM 层,方便数据库操作。 - 使用 Alembic 进行数据库迁移和版本管理。 - 已添加定时任务处理(基于 APScheduler),可根据需要与数据库初始化集成,避免多个入口控制。 - 封装了统一的响应数据格式(response),便于前后端交互。 - 对常见错误进行了拦截和统一处理。 - 数据库表模型已模拟构建,便于扩展。 - 数据库的增删查改(CRUD)操作已模拟实现。 ## 目录结构 ``` ├── app/ │ ├── api/ # 路由与接口 │ ├── core/ # 配置、定时任务、安全等核心功能 │ ├── crud/ # 数据库操作封装 │ ├── db/ # 数据库相关(模型、会话等) │ ├── models/ # ORM 数据表模型 │ ├── schemas/ # Pydantic 数据校验模型 │ ├── services/ # 业务逻辑 │ └── utils/ # 工具函数、响应、异常等 ├── alembic/ # Alembic 数据库迁移 ├── data/ # 数据库文件等 ├── tests/ # 测试用例 ├── main.py # FastAPI 应用入口 ├── Dockerfile # Docker 构建文件 ├── docker-compose.yml # Docker Compose 配置 ├── pyproject.toml # 项目依赖配置 └── README.md # 项目说明 ``` ## 快速开始 1. 安装依赖(推荐使用 uv): ```sh uv sync ``` 2. 启动项目: ```sh uv run main.py ``` 3. 使用 Docker 构建和运行: ```sh docker-compose up --build ``` ## 主要特性 - FastAPI 基础项目结构,适合快速开发 - SQLAlchemy ORM 支持 - Alembic 数据库迁移 - APScheduler 定时任务 - 统一响应封装与错误处理 - 容器化支持 ## 适用人群 适合 FastAPI 新手或需要快速搭建项目骨架的开发者。 --- 希望本模板能帮助你更快上手 FastAPI 项目开发! --- ## License This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.