Name | directed-inputs-class JSON |
Version |
1.0.0
JSON |
| download |
home_page | None |
Summary | Directed inputs class consumes and processes inputs from sources beyond args and kwargs |
upload_time | 2024-10-01 19:17:27 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | None |
keywords |
python3
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Directed Inputs Class
![Directed Inputs Class Logo](docs/_static/logo.webp)
*🛠️ Manage your Python inputs efficiently! 🎯*
[![CI Status](https://github.com/jbcom/directed-inputs-class/workflows/CI/badge.svg)](https://github.com/jbcom/directed-inputs-class/actions?query=workflow%3ACI)
[![Documentation Status](https://readthedocs.org/projects/directed-inputs-class/badge/?version=latest)](https://directed-inputs-class.readthedocs.io/en/latest/?badge=latest)
[![PyPI Package latest release](https://img.shields.io/pypi/v/directed-inputs-class.svg)](https://pypi.org/project/directed-inputs-class/)
[![Supported versions](https://img.shields.io/pypi/pyversions/directed-inputs-class.svg)](https://pypi.org/project/directed-inputs-class/)
Directed Inputs Class is a Python library that provides a flexible and robust interface for managing inputs from various sources such as environment variables, stdin, and predefined dictionaries. It offers features like input freezing, thawing, and advanced decoding utilities.
## Key Features
- 🧩 **Environment Variable Integration** - Seamlessly integrates environment variables into your inputs.
- 📥 **Stdin Input Handling** - Read and merge inputs from stdin with optional overrides.
- ❄️ **Input Freezing and Thawing** - Freeze inputs to prevent modifications, and thaw them when needed.
- 🔄 **Advanced Decoding Utilities** - Decode inputs from Base64, JSON, and YAML formats with error handling.
- 🔧 **Type Conversion** - Convert inputs to boolean or integer types with robust error handling.
### Example Usage
```python
from directed_inputs_class import DirectedInputsClass
# Initialize with environment variables and stdin
dic = DirectedInputsClass(from_environment=True, from_stdin=True)
# Retrieve and decode an input
decoded_value = dic.decode_input("example_key", decode_from_base64=True)
print(decoded_value)
```
### Freezing and Thawing Inputs
```python
from directed_inputs_class import DirectedInputsClass
# Initialize with some inputs
dic = DirectedInputsClass(inputs={"key1": "value1"})
# Freeze the inputs
frozen_inputs = dic.freeze_inputs()
print(frozen_inputs) # Outputs: {'key1': 'value1'}
# Thaw the inputs
thawed_inputs = dic.thaw_inputs()
print(thawed_inputs) # Outputs: {'key1': 'value1'}
```
For more usage examples, see the [Usage](https://directed-inputs-class.readthedocs.io/en/latest/usage.md) documentation.
## Contributing
Contributions are welcome! Please see the [Contributing Guidelines](https://github.com/jbcom/directed-inputs-class/blob/main/CONTRIBUTING.md) for more information.
## Credit
Directed Inputs Class is written and maintained by [Your Name](mailto:yourname@example.com).
## Project Links
- [**Get Help**](https://stackoverflow.com/questions/tagged/directed-inputs-class) (use the *directed-inputs-class* tag on
Stack Overflow)
- [**PyPI**](https://pypi.org/project/directed-inputs-class/)
- [**GitHub**](https://github.com/jbcom/directed-inputs-class)
- [**Documentation**](https://directed-inputs-class.readthedocs.io/en/latest/)
- [**Changelog**](https://github.com/jbcom/directed-inputs-class/tree/main/CHANGELOG.md)
Raw data
{
"_id": null,
"home_page": null,
"name": "directed-inputs-class",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "Jon Bogaty <jon@jonbogaty.com>",
"keywords": "python3",
"author": null,
"author_email": "Jon Bogaty <jon@jonbogaty.com>",
"download_url": "https://files.pythonhosted.org/packages/b9/2a/de92033c2fc6297d269bdb9861b5d09118bc10174edab4a0f047918e663b/directed_inputs_class-1.0.0.tar.gz",
"platform": null,
"description": "\n# Directed Inputs Class\n\n![Directed Inputs Class Logo](docs/_static/logo.webp)\n\n*\ud83d\udee0\ufe0f Manage your Python inputs efficiently! \ud83c\udfaf*\n\n[![CI Status](https://github.com/jbcom/directed-inputs-class/workflows/CI/badge.svg)](https://github.com/jbcom/directed-inputs-class/actions?query=workflow%3ACI)\n[![Documentation Status](https://readthedocs.org/projects/directed-inputs-class/badge/?version=latest)](https://directed-inputs-class.readthedocs.io/en/latest/?badge=latest)\n[![PyPI Package latest release](https://img.shields.io/pypi/v/directed-inputs-class.svg)](https://pypi.org/project/directed-inputs-class/)\n[![Supported versions](https://img.shields.io/pypi/pyversions/directed-inputs-class.svg)](https://pypi.org/project/directed-inputs-class/)\n\nDirected Inputs Class is a Python library that provides a flexible and robust interface for managing inputs from various sources such as environment variables, stdin, and predefined dictionaries. It offers features like input freezing, thawing, and advanced decoding utilities.\n\n## Key Features\n\n- \ud83e\udde9 **Environment Variable Integration** - Seamlessly integrates environment variables into your inputs.\n- \ud83d\udce5 **Stdin Input Handling** - Read and merge inputs from stdin with optional overrides.\n- \u2744\ufe0f **Input Freezing and Thawing** - Freeze inputs to prevent modifications, and thaw them when needed.\n- \ud83d\udd04 **Advanced Decoding Utilities** - Decode inputs from Base64, JSON, and YAML formats with error handling.\n- \ud83d\udd27 **Type Conversion** - Convert inputs to boolean or integer types with robust error handling.\n\n### Example Usage\n\n```python\nfrom directed_inputs_class import DirectedInputsClass\n\n# Initialize with environment variables and stdin\ndic = DirectedInputsClass(from_environment=True, from_stdin=True)\n\n# Retrieve and decode an input\ndecoded_value = dic.decode_input(\"example_key\", decode_from_base64=True)\nprint(decoded_value)\n```\n\n### Freezing and Thawing Inputs\n\n```python\nfrom directed_inputs_class import DirectedInputsClass\n\n# Initialize with some inputs\ndic = DirectedInputsClass(inputs={\"key1\": \"value1\"})\n\n# Freeze the inputs\nfrozen_inputs = dic.freeze_inputs()\nprint(frozen_inputs) # Outputs: {'key1': 'value1'}\n\n# Thaw the inputs\nthawed_inputs = dic.thaw_inputs()\nprint(thawed_inputs) # Outputs: {'key1': 'value1'}\n```\n\nFor more usage examples, see the [Usage](https://directed-inputs-class.readthedocs.io/en/latest/usage.md) documentation.\n\n## Contributing\n\nContributions are welcome! Please see the [Contributing Guidelines](https://github.com/jbcom/directed-inputs-class/blob/main/CONTRIBUTING.md) for more information.\n\n## Credit\n\nDirected Inputs Class is written and maintained by [Your Name](mailto:yourname@example.com).\n\n## Project Links\n\n- [**Get Help**](https://stackoverflow.com/questions/tagged/directed-inputs-class) (use the *directed-inputs-class* tag on\n Stack Overflow)\n- [**PyPI**](https://pypi.org/project/directed-inputs-class/)\n- [**GitHub**](https://github.com/jbcom/directed-inputs-class)\n- [**Documentation**](https://directed-inputs-class.readthedocs.io/en/latest/)\n- [**Changelog**](https://github.com/jbcom/directed-inputs-class/tree/main/CHANGELOG.md)\n",
"bugtrack_url": null,
"license": null,
"summary": "Directed inputs class consumes and processes inputs from sources beyond args and kwargs",
"version": "1.0.0",
"project_urls": {
"Documentation": "https://github.com/jbcom/directed-inputs-class#readme",
"Issues": "https://github.com/jbcom/directed-inputs-class/issues",
"Source": "https://github.com/jbcom/directed-inputs-class"
},
"split_keywords": [
"python3"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1135f8d1f978efac41ca8460238040d1220158b9953c5d46346cf54caa8739ae",
"md5": "2edfe3fdc1c18f402de613ad08ba9607",
"sha256": "82f5618ce8989638152e4f6e03a89dc1033da37f50ff2bc28ded69773b8f7890"
},
"downloads": -1,
"filename": "directed_inputs_class-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2edfe3fdc1c18f402de613ad08ba9607",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 6150,
"upload_time": "2024-10-01T19:17:26",
"upload_time_iso_8601": "2024-10-01T19:17:26.091561Z",
"url": "https://files.pythonhosted.org/packages/11/35/f8d1f978efac41ca8460238040d1220158b9953c5d46346cf54caa8739ae/directed_inputs_class-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b92ade92033c2fc6297d269bdb9861b5d09118bc10174edab4a0f047918e663b",
"md5": "ab2251ce7680d5f988d6c39330f32df2",
"sha256": "2e012853914f0f4a6d59d648ced55b33ff2bf391d0ffed6acdb16c8e60474efd"
},
"downloads": -1,
"filename": "directed_inputs_class-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "ab2251ce7680d5f988d6c39330f32df2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 300932,
"upload_time": "2024-10-01T19:17:27",
"upload_time_iso_8601": "2024-10-01T19:17:27.593761Z",
"url": "https://files.pythonhosted.org/packages/b9/2a/de92033c2fc6297d269bdb9861b5d09118bc10174edab4a0f047918e663b/directed_inputs_class-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-01 19:17:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "jbcom",
"github_project": "directed-inputs-class#readme",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"tox": true,
"lcname": "directed-inputs-class"
}