Created by: alefhsousa
What is this Python project?
Dynaconf is a friendlier configuration system write in python support by Red Hat members and a good community.
dynaconf a layered configuration system for Python applications - with strong support for 12-factor applications and extensions for Flask and Django.
Features
- Strict separation of settings from code (following 12-factor applications Guide).
- Define comprehensive default values.
- Store parameters in multiple file formats (.toml, .json, .yaml, .ini and .py).
- Sensitive secrets like tokens and passwords can be stored in safe places like
.secrets
file orvault server
. - Parameters can optionally be stored in external services like Redis server.
- Simple feature flag system.
- Layered [environment] system.
- Environment variables can be used to override parameters.
- Support for
.env
files to automate the export of environment variables. - Correct data types (even for environment variables).
- Have only one canonical settings module to rule all your instances.
- Drop in extension for Flask
app.config
object. - Drop in extension for Django
conf.settings
object. - Powerful $ dynaconf CLI to help you manage your settings via console.
- Customizable Validation System to ensure correct config parameters.
- Allow the change of dynamic parameters on the fly without the need to redeploy your application.
What's the difference between this Python project and similar ones?
- Customization configurations
- Configs Overloading
- Integration with external systems like aws secrets, vault.
- Feature Flags/Toggles
Anyone who agrees with this pull request could vote for it by adding a