utility library to find and load configuration files
Project description
config-library
utility library to find and load configuration files
Installation
pip install config-library
pip install config-library[all]
pip install config-library[json5]
pip install config-library[toml]
pip install config-library[yaml]
Supported Config-Types
extension | requires | link |
---|---|---|
.ini /.conf /.config |
https://en.wikipedia.org/wiki/INI_file | |
.json |
https://en.wikipedia.org/wiki/JSON | |
.jsonc |
https://changelog.com/news/jsonc-is-a-superset-of-json-which-supports-comments-6LwR | |
.json5 |
config-library[json5] |
https://json5.org/ |
.toml |
config-library[toml] or python3.11+ |
https://toml.io/ |
.yaml |
config-library[yaml] |
https://en.wikipedia.org/wiki/YAML |
Places to search for
/etc/
/home/<user>/
/path/to/git-repo/
/path/to/source/code/
And in these folder it searches for either directly the config file or a sub-folder that's named like your project.
Usage Example
import configlib
config = configlib.findAndLoad('app.conf', 'project')
system file-structure
/
├─ etc/
├─ home/user/
│ ├─ path/to/repo/
│ │ ├─ src/code/
│ │ │ ├─ main.py
│ ├─ .config/
places where config-library
searches for the config-file
- /home/user/path/to/repo/src/code/app.conf
- /home/user/path/to/repo/src/code/project/app.conf
- /home/user/path/to/repo/app.conf
- /home/user/path/to/repo/project/app.conf
- /home/user/.config/app.conf
- /home/user/.config/project/app.conf
- /etc/app.conf
- /etc/project/app.conf
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
config-library-0.4.0.tar.gz
(6.4 kB
view hashes)
Built Distribution
Close
Hashes for config_library-0.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ea4307f9e5208825d1f62e7f41a415c756e0f37cfc99a533ba5ef8f7cdecb1e |
|
MD5 | f932c7b06c105fe2e39e7227872e2ab2 |
|
BLAKE2b-256 | a9a5b76e62f081363edcc4b38044babb61abefae147a6fefd1c1580ed3b1d85e |