3 Commits

Author SHA1 Message Date
067eb96fa3 chore(deps): update docker/setup-buildx-action action to v4 2026-03-06 00:02:25 +00:00
106df3574c update fastapi-toolsets project
All checks were successful
Build Blog Docker Image / build docker (push) Successful in 2m50s
2026-03-01 10:05:04 -05:00
4512844027 bump: blowfish/hugo version
All checks were successful
Build Blog Docker Image / build docker (push) Successful in 2m24s
2026-03-01 09:55:24 -05:00
3 changed files with 35 additions and 9 deletions

View File

@@ -23,7 +23,7 @@ jobs:
- name: Set up QEMU - name: Set up QEMU
uses: docker/setup-qemu-action@v3 uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx - name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3 uses: docker/setup-buildx-action@v4
- name: Login to Docker registry - name: Login to Docker registry
uses: docker/login-action@v3 uses: docker/login-action@v3
with: with:

View File

@@ -7,7 +7,7 @@ WORKDIR /opt/blog
COPY . /opt/blog/ COPY . /opt/blog/
RUN git submodule update --init --recursive && \ RUN git submodule update --init --recursive && \
git -C themes/blowfish/ checkout v2.97.0 git -C themes/blowfish/ checkout v2.98.0
RUN hugo RUN hugo
# Publish Stage # Publish Stage

View File

@@ -7,15 +7,15 @@ showWordCount: false
showReadingTime: false showReadingTime: false
showRelatedContent: false showRelatedContent: false
showPagination: false showPagination: false
tags: ["fastapi", "package", "toolsets"] tags: ["python", "fastapi", "package", "toolsets"]
--- ---
![overview](featured.png) ![overview](featured.png)
{{< github repo="d3vyce/fastapi-toolsets" >}} {{< github repo="d3vyce/fastapi-toolsets" >}}
> Reusable tools for FastAPI: async CRUD, fixtures, CLI, and standardized responses > Production-ready utilities for FastAPI applications
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. 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.
[![CI](https://github.com/d3vyce/fastapi-toolsets/actions/workflows/ci.yml/badge.svg)](https://github.com/d3vyce/fastapi-toolsets/actions/workflows/ci.yml) [![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) [![codecov](https://codecov.io/gh/d3vyce/fastapi-toolsets/graph/badge.svg)](https://codecov.io/gh/d3vyce/fastapi-toolsets)
@@ -35,17 +35,43 @@ FastAPI Toolsets provides production-ready utilities for FastAPI applications bu
## Installation ## Installation
The base package includes the core modules (CRUD, database, schemas, exceptions, fixtures, dependencies, logging):
```bash ```bash
uv add fastapi-toolsets 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 ## Features
- **CRUD**: Generic async CRUD operations with `CrudFactory` ### Core
- **Fixtures**: Fixture system with dependency management, context support and pytest integration
- **CLI**: Django-like command-line interface with fixture management and custom commands support - **CRUD**: Generic async CRUD operations with `CrudFactory`, built-in full-text/faceted search and Offset/Cursor pagination.
- **Standardized API Responses**: Consistent response format across your API - **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 - **Exception Handling**: Structured error responses with automatic OpenAPI documentation
- **Logging**: Logging configuration with uvicorn integration via `configure_logging` and `get_logger`
### Optional
- **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
## License ## License