FastAPI Python web framework. Use when building async APIs with FastAPI, Pydantic v2 models, dependency injection, WebSocket endpoints, or OpenAPI auto-documentation.
Scanned 9/12/2026
Install to Claude Code
npx -y skills add skeletorflet/opencode-supreme-setup --skill fastapi --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Fastapi?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/skeletorflet-fastapi)More formats (shields.io, HTML) on the badges page.
---
name: fastapi
description: FastAPI Python web framework. Use when building async APIs with FastAPI, Pydantic v2 models, dependency injection, WebSocket endpoints, or OpenAPI auto-documentation.
---
## fastapi
Modern Python web framework built on Starlette and Pydantic for high-performance async APIs.
### Core Concepts
- Async endpoints: define routes with `async def`, FastAPI handles concurrency via asyncio
- Pydantic v2 models: request/response validation with `BaseModel`, automatic JSON Schema generation
- Dependency Injection: `Depends()` resolves reusable components across route handlers
- OpenAPI/Swagger: auto-generated interactive docs at /docs and /redoc from type hints
### Common Patterns
- Background tasks: `BackgroundTasks` for post-response operations like email or logging
- CORS middleware: `CORSMiddleware` with allow_origins for cross-origin browser requests
- WebSocket: `WebSocket` endpoint with `websocket.accept()` for real-time bidirectional communication
- Router modularity: `APIRouter` with prefix and tags to organize endpoints by domain
### Best Practices
- Use Pydantic v2 `model_validator` over v1 custom validators for cleaner validation logic
- Split routes into versioned routers (v1, v2) for backward-compatible API evolution
- Set `response_model` on route decorators to control serialization and docs schema
- Use `httpx.AsyncClient` with `TestClient` for testing async endpoint chains
### Common Code Patterns
- `@app.post("/items")` with `Depends(get_current_user)` for auth-gated endpoints
- `async with db.session()` context manager for transactional database operations
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!