Utilities to help reduce boilerplate and reuse common functionality, Based to Support Building of Authx & Authx-lite
Project description
authx-core 💫
Features
Utilities to help reduce boilerplate and reuse common functionality, Based to Support Building of Authx & Authx-lite ⚡:
- SQLAlchemy Sessions: The
AuthxDB
class provides an easily-customized SQLAlchemy Session dependency.- Asynchronous Sessions: The
authxAsyncGetEngine
function returns aAsyncResult
object, which can be used to wait for the engine to be ready. - Support Customs Models & Schemas: Supports custom user models (both ORM and pydantic) without sacrificing any type-safety.
- Asynchronous Sessions: The
- Middleware: Log basic timing information for every request.
- Inferring Router: Let FastAPI infer the
response_model
to use based on your return type annotation. - OpenAPI Simplification: Simplify your OpenAPI Operation IDs for cleaner output from OpenAPI Generator.
- Views: Stop repeating the same dependencies over and over in the signature of related endpoints.
- Repeated Tasks: Easily trigger periodic tasks on server startup.
It also adds a variety of more basic utilities that are useful across a wide variety of projects:
- GUID Type: The provided GUID type makes it easy to use UUIDs as the primary keys for your database tables.
- Enums: The
authxStrEnum
andauthxCamelStrEnum
classes make string-valued enums easier to maintain. - CamelCase & SnakeCase: Convenience functions for converting strings from
authxSnake
toauthxCamel
and vice versa. - authxModel: A reusable
pydantic.BaseModel
derived base class with useful defaults. - authxAPISettings: A subclass of
pydantic.BaseSettings
that makes it easy to configure FastAPI through environment variables.
Requirements
This package is intended for use with any recent version of FastAPI (depending
on pydantic
and FastAPI
and SQLAlchemy
), and Python 3.8+.
Installation
pip install authx_core
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
File details
Details for the file authx_core-0.0.10.tar.gz
.
File metadata
- Download URL: authx_core-0.0.10.tar.gz
- Upload date:
- Size: 34.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.27.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd8d944f6a40037b6278b24545ec6edc44300bc8f8d25602a5cea19bdb8d5baa |
|
MD5 | 29da58ae5ea2522a585880f50181d2c7 |
|
BLAKE2b-256 | cf7424b60db632824adb7e96edd838f5640793b1f34c22a290b4e31140735be6 |
File details
Details for the file authx_core-0.0.10-py3-none-any.whl
.
File metadata
- Download URL: authx_core-0.0.10-py3-none-any.whl
- Upload date:
- Size: 30.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.27.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3e2fcc877602fdc7659985c83d7a6574570a60abdc7578434805876a203396b2 |
|
MD5 | 5e39b10df743be67a84a3f9e8a8aac40 |
|
BLAKE2b-256 | dd0b42a0ec678521bd8801b1dad859188adabd51228762a0f9226a8c9c068592 |