Set up configuration for your application or library with ease.
Project description
configureme
Set up configuration for your application or library with ease.
Features
configureme gives you a few key features that make your life easy when creating libraries or applications:
- Easily create configuration following the config.py pattern
- Use environment variables in your configuration and change them dynamically at runtime
- Use a .env file and follow the twelve-factor app methodology
Example
Get up and running with full configuration quickly:
from configureme import Config class Config(object): DEBUG = False config = Config() # load from a simple object config.from_object(Config) # add and watch environment variables config.from_envar("DEBUG") # use a dotenv file config.from_dotenv("/path/to/.env/") # config works like a dict! config["DEBUG"] # True
Installation
Installation is easy using pip:
pip install configureme
Advanced Usage
Usage with pipenv
If your using a dev workflow tool like Pipenv, you can easily pair configureme with it. Pipenv will automatically load .env files for you out of the box. To track variables loaded from a .env file when using Pipenv, simply use this pattern:
# .env file DEBUG=true
from configureme import Config config = Config() # watch each variable loaded by Pipenv config.from_envar("DEBUG") config["DEBUG"] # True
Usage with python-dotenv
python-dotenv is a useful tool for managing .env files in multiple environments. As with the previous example, it's easy to pair with configureme.
# .env file DEBUG=true
from dotenv import load_dotenv from configureme import Config load_dotenv() config = Config() # watch each variable loaded by python-dotenv config.from_envar("DEBUG") config["DEBUG"] # True
How to contribute
-
Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug.
-
Fork the repository on GitHub to start making your changes to the master branch (or branch off of it).
-
Write a test which shows that the bug was fixed or that the feature works as expected. Make sure to use pre-commit too!
-
Send a pull request and bug the maintainer until it gets merged and published. Make sure to add yourself to AUTHORS.
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.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size configureme-0.1.2a0-py3-none-any.whl (6.2 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |
Filename, size configureme-0.1.2a0.tar.gz (6.1 kB) | File type Source | Python version None | Upload date | Hashes View |
Hashes for configureme-0.1.2a0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71d53e60a3b87a45c3e3d30debac84b77c83f31e75d0b200d72a9556dff9f5c3 |
|
MD5 | ab07402f5860d103b950d9a683698469 |
|
BLAKE2-256 | 58ed8fd44396cbbfd86fc0eaf9af4b01c0439dbae176e27292e135beea9c64f2 |