Welcome to BatConf

Configuration Management for Python projects, modules, applications, and microservices.

Compose structured hierarchical configurations from multiple sources. Enable your code to adapt seemlessly to the current context. Allow users in different contexts to use the config source that works best for them.

  • Hierarchical priority: CLI > Environment > config file > module defaults

  • Provides builtin support for common config sources:

    • CLI args

    • Environment Variables

    • Config File (yaml)

    • Config classes with default values

  • Easily extendable, add new sources to serve your needs.

  • Set reasonable defaults, and override them as needed.

  • Designed for 12-factor applications (config via Environment Variables)

Stable Version Build Status PyPI - Python Version Downloads

Contributing

All contributions, bug reports, bug fixes, documentation improvements, enhancements and ideas are welcome.

Check out one of these good first issues to help with:

Issues

Submit issues, feature requests or bugfixes on GitHub

License and Credits

batconf is licensed under the MIT license. and is written and maintained by Lundy Bernard (lundy.bernard@gmail.com) and Lauren Moore

Indices and tables