A personal utility library I've developed to streamline and optimize backend development with FastAPI in my projects. From generic repositories and queries to enums, error handling, and more, FastGear encompasses essential tools that have proven invaluable in my development journey, whether as a novice or a seasoned professional.
Project description
Python library for FastAPI, boosting SQLAlchemy and Redis with pagination, error handling, and session management.
FastGear is a comprehensive Python library designed for FastAPI. It provides robust support for both asynchronous and synchronous operations with SQLAlchemy and asynchronous operations with Redis. Key features include dynamic pagination, custom error handling, automatic database session management within a context manager, and much more.
Source Code: https://github.com/hmarcuzzo/fastgear
Features
- Fully Async: Leverages Python's async capabilities for non-blocking database operations.
- SQLAlchemy 2.0: Works with the latest SQLAlchemy version for robust database interactions.
- Redis Support: Provides support for Redis for caching and other operations.
- Dynamic Query Building: Supports building simple queries dynamically, including filtering, sorting, and pagination.
- Built-in Offset Pagination: Comes with ready-to-use offset pagination.
- Custom Error Handling: Provides custom error handling for better debugging and user experience.
- Session Management: Automatically manages database sessions within a context manager.
Requirements
Before installing FastGear, ensure you have the following prerequisites:
- Python: Version 3.10 or newer.
- FastAPI: FastGear is built to work with FastAPI, so having FastAPI in your project is essential.
- SQLAlchemy: FastGear uses SQLAlchemy 2.0 for database operations, so you need SQLAlchemy 2.0 or newer.
- Pydantic V2: FastGear leverages Pydantic models for data validation and serialization, so you need Pydantic 2.0 or newer.
- Redis: If you plan to use Redis with FastGear, you need to have Redis installed and running in a version 5.0 or newer.
Installing
To install the fastgear package, follow these steps:
Using pip
Run the following command:
pip install fastgear
Using Poetry
Run the following command:
poetry add fastgear
License
This project is licensed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastgear-0.1.2.tar.gz.
File metadata
- Download URL: fastgear-0.1.2.tar.gz
- Upload date:
- Size: 23.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.1 CPython/3.12.3 Linux/5.15.167.4-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
699ee57389e73c9e1c11341b22e75321c46ff189487f9a44baf0588941c27d8f
|
|
| MD5 |
b8a2121bf55ddee7d30f88542aad3ec7
|
|
| BLAKE2b-256 |
a3db121364a426a9197c650d3d9e9cab1b6c6b69c9e42fe5cc8ba69c68df26f9
|
File details
Details for the file fastgear-0.1.2-py3-none-any.whl.
File metadata
- Download URL: fastgear-0.1.2-py3-none-any.whl
- Upload date:
- Size: 36.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.1.1 CPython/3.12.3 Linux/5.15.167.4-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
087c37f494275a5a16a0bd1d072a74c2bfea4d3aff14d8cd629a0c8db85e8a96
|
|
| MD5 |
9eacbaedccbb2e8a11894a3b4971aba4
|
|
| BLAKE2b-256 |
e6a2a284a8b31fef74a01f877f961ccf53aaa08a6f5056a9b16729b12a45ec43
|