https://github.com/a-poor/configleaf
Easy app config library for Python
https://github.com/a-poor/configleaf
Last synced: 12 months ago
JSON representation
Easy app config library for Python
- Host: GitHub
- URL: https://github.com/a-poor/configleaf
- Owner: a-poor
- License: mit
- Created: 2021-10-10T15:28:57.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-10-11T16:26:59.000Z (over 4 years ago)
- Last Synced: 2025-06-15T06:53:26.166Z (12 months ago)
- Language: Python
- Size: 17.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# configleaf

[](https://github.com/a-poor/configleaf/actions/workflows/python-app.yml)

[](https://www.codefactor.io/repository/github/a-poor/configleaf)


[](https://github.com/psf/black)
_created by Austin Poor_
An application configuration library, inspired by Go's [Viper](https://github.com/spf13/viper), written in Python.
## Installation
`configleaf` can be installed with pip:
```sh
$ pip install configleaf
```
## Quick Start
Here's a short example of `configleaf` in action:
```python
...
```
## About
...
## Dependencies
* `python-dotenv`: For reading from `.env` config files
* `pyyaml`: For reading from `YAML` config files
* `boto3`: For reading from AWS SecretsManager
## Contributing
Pull requests are super welcome! For major changes, please open an issue first to discuss what you would like to change. And please make sure to update tests as appropriate.
Or... feel free to just open an issue with some thoughts or suggestions or even just to say Hi and tell me if this library has been helpful!
## License
[MIT](./LICENSE.txt)
## To-Do
* Load environment variables
* Read config files
* JSON
* YAML
* TOML
* .env
* .ini
* Read command line arguments
* Remote key/value config stores
* redis
* etcd
* AWS AppConfig
* GCP alternative
* Azure alternative
* Get secret values (separate interface from remote k/v store)
* ex AWS SecretsManager
* ie Load secret name from a config then get the value from a secrets manager
* Live reload configs
* Create a config-loading interface to allow for adding plugins