Bingqilin¶
A collection of utilities to serve as syntactic ice cream for your FastAPI app
Documentation: https://a-huy.github.io/bingqilin/
Source Code: https://github.com/a-huy/bingqilin
Features¶
This package contains some utilities for common actions and resources for your FastAPI app:
- Extended Settings Loading - Bingqilin provides additional pieces to enhance Pydantic's
BaseSettings
: - Add settings sources to enable loading from
.yaml
files or.ini
files - Allow the option to add the settings model to the OpenAPI docs (
/docs
) - A base
ConfigModel
derived from Pydantic'sBaseSettings
that will allow configuring parts of your FastAPI app and Bingqilin's utilities via settings -
Provides a
SettingsManager
class to attach your settings model to allow live reconfiguring -
Reconfigurable Contexts - Provide constructs to declare shared connection objects (such as databases and third-party clients) that can be initialized from settings and can be enabled for live reconfiguring.
-
Validation Error Logging - Add an exception handler for
RequestValidationError
that emits a log. Useful for troubleshooting routes that support a lot of different types of requests, such as third-party callback handlers. -
Commands Framework (on top of Typer) - Gives a basic framework to easily add management commands and make them discoverable / usable with the
bingqilin
command.
Requirements¶
This package is intended for use with any recent version of FastAPI (>=0.95.2
).
Installation¶
pip install bingqilin
License¶
This project is licensed under the terms of the MIT license.