# Bingqilin
<p align="center">
<em>A collection of utilities that serve as syntactic ice cream for your FastAPI app</em>
</p>
<p align="center">
<img src="https://img.shields.io/github/last-commit/a-huy/bingqilin.svg">
<a href="https://pypi.org/project/bingqilin" target="_blank">
<img src="https://badge.fury.io/py/bingqilin.svg" alt="Package version">
</a>
<img src="https://img.shields.io/pypi/pyversions/bingqilin.svg">
<img src="https://img.shields.io/github/license/a-huy/bingqilin.svg">
</p>
---
Documentation: [https://a-huy.github.io/bingqilin/](https://a-huy.github.io/bingqilin/)
Source Code: [https://github.com/a-huy/bingqilin](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's `BaseSettings` 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.
## 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.
Raw data
{
"_id": null,
"home_page": "https://github.com/a-huy/bingqilin",
"name": "bingqilin",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": "bingqilin, fastapi",
"author": "Andy",
"author_email": "andy@ahn.io",
"download_url": "https://files.pythonhosted.org/packages/30/c7/750e1c381a981ffe6e79db6d09f29f93e2a525acf57854684ae77aa00302/bingqilin-0.6.2.tar.gz",
"platform": null,
"description": "# Bingqilin\n<p align=\"center\">\n <em>A collection of utilities that serve as syntactic ice cream for your FastAPI app</em>\n</p>\n<p align=\"center\">\n<img src=\"https://img.shields.io/github/last-commit/a-huy/bingqilin.svg\">\n<a href=\"https://pypi.org/project/bingqilin\" target=\"_blank\">\n <img src=\"https://badge.fury.io/py/bingqilin.svg\" alt=\"Package version\">\n</a>\n<img src=\"https://img.shields.io/pypi/pyversions/bingqilin.svg\">\n<img src=\"https://img.shields.io/github/license/a-huy/bingqilin.svg\">\n</p>\n\n---\n\nDocumentation: [https://a-huy.github.io/bingqilin/](https://a-huy.github.io/bingqilin/)\nSource Code: [https://github.com/a-huy/bingqilin](https://github.com/a-huy/bingqilin)\n\n---\n\n## Features\n\nThis package contains some utilities for common actions and resources for your FastAPI app:\n\n* **Extended Settings Loading** - Bingqilin provides additional pieces to enhance Pydantic's `BaseSettings`:\n * Add settings sources to enable loading from `.yaml` files or `.ini` files\n * Allow the option to add the settings model to the OpenAPI docs (`/docs`)\n * A base `ConfigModel` derived from Pydantic's `BaseSettings` that will allow configuring parts of your FastAPI app and Bingqilin's utilities via settings \n * Provides a `SettingsManager` class to attach your settings model to allow live reconfiguring\n\n* **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.\n\n* **Validation Error Logging** - Add an exception handler for `RequestValidationError` that emits a log. \n Useful for troubleshooting routes that support a lot of different types of requests, such as \n third-party callback handlers.\n\n## Requirements\n\nThis package is intended for use with any recent version of FastAPI (`>=0.95.2`).\n\n## Installation\n\n pip install bingqilin\n\n## License\nThis project is licensed under the terms of the MIT license.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A collection of utilities for building APIs with FastAPI",
"version": "0.6.2",
"project_urls": {
"Homepage": "https://github.com/a-huy/bingqilin",
"Repository": "https://github.com/a-huy/bingqilin"
},
"split_keywords": [
"bingqilin",
" fastapi"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d4db6852c3c1b9732b0680b242894491644fb6ee11d41569097992be901d3e85",
"md5": "de70af64be5b3686ae24728d5dd397f6",
"sha256": "60a4b795f651a5a16a077a32b294fa26014505832589d0a790f916cfb5a5729b"
},
"downloads": -1,
"filename": "bingqilin-0.6.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "de70af64be5b3686ae24728d5dd397f6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 37110,
"upload_time": "2024-08-27T02:37:28",
"upload_time_iso_8601": "2024-08-27T02:37:28.713176Z",
"url": "https://files.pythonhosted.org/packages/d4/db/6852c3c1b9732b0680b242894491644fb6ee11d41569097992be901d3e85/bingqilin-0.6.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "30c7750e1c381a981ffe6e79db6d09f29f93e2a525acf57854684ae77aa00302",
"md5": "6d5ef27927d63916ed88f633c0a2bce1",
"sha256": "f161afe05c5ec66c627063a2fec08a6d5b9a58d154401b8ba01f9f4474a85332"
},
"downloads": -1,
"filename": "bingqilin-0.6.2.tar.gz",
"has_sig": false,
"md5_digest": "6d5ef27927d63916ed88f633c0a2bce1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 29019,
"upload_time": "2024-08-27T02:37:30",
"upload_time_iso_8601": "2024-08-27T02:37:30.172669Z",
"url": "https://files.pythonhosted.org/packages/30/c7/750e1c381a981ffe6e79db6d09f29f93e2a525acf57854684ae77aa00302/bingqilin-0.6.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-27 02:37:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "a-huy",
"github_project": "bingqilin",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "bingqilin"
}