Overview of fastapi-utils features
masterfastapi-utils provides utilities to reduce boilerplate in FastAPI projects. Key features include:
FastAPI Integration Utilities
- Resource Class: An OOP-based base class for implementing CRUD operations quickly.
- Class Based Views: Allows grouping related endpoints to avoid repeating dependencies in function signatures.
- Repeated Tasks: Utility to trigger periodic tasks automatically on server startup.
- Timing Middleware: Middleware that logs basic timing information for every incoming request.
- OpenAPI Spec Simplification: Simplifies OpenAPI Operation IDs to produce cleaner output when using OpenAPI Generator.
- SQLAlchemy Sessions: Provides
FastAPISessionMakerfor customizable SQLAlchemy Session dependencies.
General Utilities
- APIModel: A
pydantic.BaseModelderivative with useful defaults. - APISettings: A
pydantic.BaseSettingssubclass for configuring FastAPI via environment variables. - String-Valued Enums:
StrEnumandCamelStrEnumfor easier maintenance of string-based enums. - CamelCase Conversions: Functions to convert strings between
snake_case,camelCase, andPascalCase. - GUID Type: A specialized type for using UUIDs as primary keys in database tables.