1 Commits

Author SHA1 Message Date
56e86e0c7c chore(deps): update hugomods/hugo docker tag to v0.156.0 2026-02-19 00:02:06 +00:00
2 changed files with 9 additions and 35 deletions

View File

@@ -1,5 +1,5 @@
# Build Stage
FROM hugomods/hugo:0.155.3 AS build
FROM hugomods/hugo:0.156.0 AS build
ARG BLOWFISH_VERSION
@@ -7,7 +7,7 @@ WORKDIR /opt/blog
COPY . /opt/blog/
RUN git submodule update --init --recursive && \
git -C themes/blowfish/ checkout v2.98.0
git -C themes/blowfish/ checkout v2.97.0
RUN hugo
# Publish Stage

View File

@@ -7,15 +7,15 @@ showWordCount: false
showReadingTime: false
showRelatedContent: false
showPagination: false
tags: ["python", "fastapi", "package", "toolsets"]
tags: ["fastapi", "package", "toolsets"]
---
![overview](featured.png)
{{< github repo="d3vyce/fastapi-toolsets" >}}
> Production-ready utilities for FastAPI applications
> Reusable tools for FastAPI: async CRUD, fixtures, CLI, and standardized responses
A modular collection of production-ready utilities for FastAPI. Install only what you need — from async CRUD and database helpers to CLI tooling, Prometheus metrics, and pytest fixtures. Each module is independently installable via optional extras, keeping your dependency footprint minimal.
FastAPI Toolsets provides production-ready utilities for FastAPI applications built with async SQLAlchemy and PostgreSQL. It includes generic CRUD operations, a fixture system with dependency resolution, a Django-like CLI, standardized API responses, and structured exception handling with automatic OpenAPI documentation.
[![CI](https://github.com/d3vyce/fastapi-toolsets/actions/workflows/ci.yml/badge.svg)](https://github.com/d3vyce/fastapi-toolsets/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/d3vyce/fastapi-toolsets/graph/badge.svg)](https://codecov.io/gh/d3vyce/fastapi-toolsets)
@@ -35,43 +35,17 @@ A modular collection of production-ready utilities for FastAPI. Install only wha
## Installation
The base package includes the core modules (CRUD, database, schemas, exceptions, fixtures, dependencies, logging):
```bash
uv add fastapi-toolsets
```
Install only the extras you need:
```bash
uv add "fastapi-toolsets[cli]" # CLI (typer)
uv add "fastapi-toolsets[metrics]" # Prometheus metrics (prometheus_client)
uv add "fastapi-toolsets[pytest]" # Pytest helpers (httpx, pytest-xdist)
```
Or install everything:
```bash
uv add "fastapi-toolsets[all]"
```
## Features
### Core
- **CRUD**: Generic async CRUD operations with `CrudFactory`, built-in full-text/faceted search and Offset/Cursor pagination.
- **Database**: Session management, transaction helpers, table locking, and polling-based row change detection
- **Dependencies**: FastAPI dependency factories (`PathDependency`, `BodyDependency`) for automatic DB lookups from path or body parameters
- **Fixtures**: Fixture system with dependency management, context support, and pytest integration
- **Standardized API Responses**: Consistent response format with `Response`, `PaginatedResponse`, and `PydanticBase`
- **Exception Handling**: Structured error responses with automatic OpenAPI documentation
- **Logging**: Logging configuration with uvicorn integration via `configure_logging` and `get_logger`
### Optional
- **CRUD**: Generic async CRUD operations with `CrudFactory`
- **Fixtures**: Fixture system with dependency management, context support and pytest integration
- **CLI**: Django-like command-line interface with fixture management and custom commands support
- **Metrics**: Prometheus metrics endpoint with provider/collector registry
- **Pytest Helpers**: Async test client, database session management, `pytest-xdist` support, and table cleanup utilities
- **Standardized API Responses**: Consistent response format across your API
- **Exception Handling**: Structured error responses with automatic OpenAPI documentation
## License