Metadata-Version: 2.0
Name: knobs
Version: 0.2.2
Summary: Environment variable manager
Home-page: https://github.com/sthysel/knobs
Author: sthysel
Author-email: sthysel@gmail.com
License: GPLv2
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Operating System :: Unix
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Utilities
Requires-Dist: click
Requires-Dist: python-dotenv

============================================
Knobs are used to tune environment variables
============================================

.. image:: pics/knob.jpg

Use *knobs* if you worship at the church of the `12 Factor App <http://www.12factor.net/>`_

A knob is a wrapper for an environment variable. It can
* Read and write an environment variable
* Make sure it is of the expected type
* Validate a value is good.

.. code::
   >>> pirates = Knob('JOLLY_ROGER_PIRATES', 124, description='Yar')
   >>> pirates.get()
   124
   >>> pirates.get_type

*knobs* will search for a nominated environmental file (default *.env*) and load that
into the environment. A knob is type aware, configured from the environment and its value can be
persisted to ease the creation of configuration files.

Knobs uses a forked copy of `python-sotenv <https://github.com/theskumar/python-dotenv>`_


Install
=======

Install from pypi

.. code::

   $ pip install knobs

Install from source

.. code::

   $ pip install .



Versioning
==========

Current version is 0.2.2

