fastapi-development
Enforces best practices for FastAPI development, ensuring scalable, high-performance, and maintainable APIs. Use when working on server-side Python code involving FastAPI.
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
FastAPI Development Standards
Key Principles
- Concise & Technical: Write accurate, functional code.
- Functional Style: Prefer pure functions over classes for routes and logic.
- RORO Pattern: "Receive an Object, Return an Object". Use Pydantic models for all inputs and outputs.
Architecture & Structure
-
File Naming: Lowercase with underscores (e.g.,
routers/user_routes.py). - Exports: Favor named exports.
- Organization: Separate exported routers, sub-routes, utilities, static content, and types (models/schemas).
Coding Standards
- Type Hints: Mandatory for all function signatures.
- Validation: Use Pydantic models (v2) instead of raw dictionaries.
- Conditionals: Avoid unnecessary curly braces. Use one-line syntax for simple conditionals.
-
Async/Sync:
- Use
async deffor I/O-bound operations (DB, external APIs). - Use
deffor CPU-bound synchronous tasks.
- Use
Error Handling
- Early Returns: Handle errors/edge cases first. Happy path goes last.
- Guard Clauses: Validate preconditions early.
-
HTTPExceptions: Use
HTTPExceptionfor expected errors. - No Nested Ifs: Avoid deep nesting.
Performance
- Non-blocking: Minimize blocking I/O. Use async libraries (asyncpg, aiomysql).
- Caching: Implement strategies for frequent data.
- Lazy Loading: Use for large datasets.
Dependencies
- FastAPI
- Pydantic v2
- SQLAlchemy 2.0 (if ORM used)
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-01-20
- 索引更新时间
- 2026-01-26
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!