Skip to main content

Utilities to help reduce boilerplate and reuse common functionality, Based to Support Building of Authx & Authx-lite

Project description

authx-core 💫

authx

codecov Pypi framework

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 a AsyncResult 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.
  • 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 and authxCamelStrEnum classes make string-valued enums easier to maintain.
  • CamelCase & SnakeCase: Convenience functions for converting strings from authxSnake to authxCamel 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

authx_core-0.0.10.tar.gz (34.3 kB view hashes)

Uploaded Source

Built Distribution

authx_core-0.0.10-py3-none-any.whl (30.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page