fastapi/fastapi
Systems
The framework is small enough that "systems" maps neatly onto sub-modules of fastapi/. This section walks them.
| System | Source | Role |
|---|---|---|
| Application core | fastapi/applications.py |
The FastAPI class — entry point, OpenAPI orchestration, exception-handler registry. |
| Routing | fastapi/routing.py |
APIRouter, APIRoute, APIWebSocketRoute, request/response wrapping, response serialization. |
| Parameters | fastapi/params.py, fastapi/param_functions.py |
The Param/Body/Form/File/Depends/Security markers. |
| Security | fastapi/security/ |
Auth schemes (API key, HTTP, OAuth2, OpenID Connect). |
| OpenAPI | fastapi/openapi/ |
Schema generator, OpenAPI Pydantic models, Swagger UI / ReDoc HTML. |
| Encoders | fastapi/encoders.py |
jsonable_encoder — JSON-coerce arbitrary Python values. |
| Exceptions | fastapi/exceptions.py, fastapi/exception_handlers.py |
Error classes and default handlers. |
| Middleware | fastapi/middleware/ |
Re-exports + the dependency cleanup middleware. |
| Pydantic compatibility | fastapi/_compat/ |
Wrapper over Pydantic v2 internals. |
Cross-cutting features (under features/)
The systems above implement these end-to-end behaviours, which are documented separately:
- Dependency injection cuts across Routing, Parameters, and Security.
- OpenAPI generation cuts across Application core, Routing, and OpenAPI.
- Server-Sent Events is implemented in
fastapi/sse.pybut its encoding is infastapi/routing.py. - Request lifecycle is the end-to-end view spanning Application core, Middleware, Routing, and Dependency injection.
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.
Previous
Tooling
Next
Application core