Metadata-Version: 2.1
Name: config_patterns
Version: 1.0.4
Summary: Brings config management best practices for production-ready application.
Home-page: https://github.com/MacHu-GWU/config_patterns-project
Download-URL: https://pypi.python.org/pypi/config_patterns/1.0.4#downloads
Author: Sanhe Hu
Author-email: husanhe@gmail.com
Maintainer: Unknown
License: MIT
Platform: Windows
Platform: MacOS
Platform: Unix
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: MacOS
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3 :: Only
License-File: LICENSE.txt
License-File: AUTHORS.rst
Requires-Dist: cached-property>=1.5.2; python_version < "3.8"
Requires-Dist: typing-extensions
Provides-Extra: dev
Requires-Dist: pathlib_mate; extra == "dev"
Requires-Dist: twine; extra == "dev"
Requires-Dist: wheel; extra == "dev"
Requires-Dist: boto3; extra == "dev"
Requires-Dist: boto_session_manager>=1.3.1; extra == "dev"
Requires-Dist: pysecret>=1.0.3; extra == "dev"
Requires-Dist: aws_console_url>=0.5.1; extra == "dev"
Requires-Dist: jupyterlab; extra == "dev"
Provides-Extra: test
Requires-Dist: pytest; extra == "test"
Requires-Dist: pytest-cov; extra == "test"
Requires-Dist: moto; extra == "test"
Provides-Extra: doc
Requires-Dist: sphinx==4.3.0; extra == "doc"
Requires-Dist: sphinx-inline-tabs==2021.8.17b10; extra == "doc"
Requires-Dist: sphinx-jinja==1.1.1; extra == "doc"
Requires-Dist: sphinx-copybutton==0.4.0; extra == "doc"
Requires-Dist: rstobj==0.0.7; extra == "doc"
Requires-Dist: docfly==1.0.2; extra == "doc"
Requires-Dist: furo==2021.8.31; extra == "doc"
Provides-Extra: aws
Requires-Dist: boto3; extra == "aws"
Requires-Dist: boto_session_manager<2.0.0,>=1.3.1; extra == "aws"
Requires-Dist: s3pathlib<3.0.0,>=2.0.1; extra == "aws"
Requires-Dist: pysecret<3.0.0,>=2.2.3; extra == "aws"
Requires-Dist: aws_console_url<2.0.0,>=1.3.2; extra == "aws"


.. .. image:: https://readthedocs.org/projects/config_patterns/badge/?version=latest
    :target: https://config_patterns.readthedocs.io/index.html
    :alt: Documentation Status

.. image:: https://github.com/MacHu-GWU/config_patterns-project/workflows/CI/badge.svg
    :target: https://github.com/MacHu-GWU/config_patterns-project/actions?query=workflow:CI

.. image:: https://codecov.io/gh/MacHu-GWU/config_patterns-project/branch/main/graph/badge.svg
    :target: https://codecov.io/gh/MacHu-GWU/config_patterns-project

.. image:: https://img.shields.io/pypi/v/config_patterns.svg
    :target: https://pypi.python.org/pypi/config_patterns

.. image:: https://img.shields.io/pypi/l/config_patterns.svg
    :target: https://pypi.python.org/pypi/config_patterns

.. image:: https://img.shields.io/pypi/pyversions/config_patterns.svg
    :target: https://pypi.python.org/pypi/config_patterns

.. image:: https://img.shields.io/pypi/dm/config_patterns.svg
    :target: https://pypi.python.org/pypi/config_patterns

.. image:: https://img.shields.io/badge/release_history!--None.svg?style=social
    :target: https://github.com/MacHu-GWU/config_patterns-project/blob/main/release-history.rst

.. image:: https://img.shields.io/badge/STAR_Me_on_GitHub!--None.svg?style=social
    :target: https://github.com/MacHu-GWU/config_patterns-project

------

.. .. image:: https://img.shields.io/badge/Link-Document-blue.svg
    :target: https://config_patterns.readthedocs.io/index.html

.. .. image:: https://img.shields.io/badge/Link-API-blue.svg
    :target: https://config_patterns.readthedocs.io/py-modindex.html

.. .. image:: https://img.shields.io/badge/Link-Source_Code-blue.svg
    :target: https://config_patterns.readthedocs.io/py-modindex.html

.. image:: https://img.shields.io/badge/Link-Install-blue.svg
    :target: `install`_

.. image:: https://img.shields.io/badge/Link-GitHub-blue.svg
    :target: https://github.com/MacHu-GWU/config_patterns-project

.. image:: https://img.shields.io/badge/Link-Submit_Issue-blue.svg
    :target: https://github.com/MacHu-GWU/config_patterns-project/issues

.. image:: https://img.shields.io/badge/Link-Request_Feature-blue.svg
    :target: https://github.com/MacHu-GWU/config_patterns-project/issues

.. image:: https://img.shields.io/badge/Link-Download-blue.svg
    :target: https://pypi.org/pypi/config_patterns#files


Welcome to ``config_patterns`` Documentation
==============================================================================
``config_patterns`` is a Python library that brings config management best practices for production-ready application.

1. `Hierarchy Json Pattern for Config Management <https://github.com/MacHu-GWU/config_patterns-project/blob/main/example/separate_and_merge_non_sesitive_and_sensitive_data_example.ipynb>`_: allows you to define a hierarchy structure of your config data model, and inherit global config values if a specific config value is not defined.
2. `Separate and Merge Non-Sensitive Data and Secret Data <https://github.com/MacHu-GWU/config_patterns-project/blob/main/example/separate_and_merge_non_sesitive_and_sensitive_data_example.ipynb>`_: allows you to manage non-sensitive config data and sensitive config data separately and merge them together.
3. `Multi Environment Json <https://github.com/MacHu-GWU/config_patterns-project/blob/main/example/multi_env_json/multi_environment_config.ipynb>`_: allows you to manage configs for multi-environment deployment application.
4. `Multi Environment Config Management - SSM Backend <https://github.com/MacHu-GWU/config_patterns-project/blob/main/example/multi_env_json/multi_environment_config_with_ssm_backend.ipynb>`_: a production ready solution using AWS Parameter Store as the backend for multi-environment config management.
5. `Multi Environment Config Management - S3 Backend <https://github.com/MacHu-GWU/config_patterns-project/blob/main/example/multi_env_json/multi_environment_config_with_s3_backend.ipynb>`_: a production ready solution using AWS S3 as the backend for multi-environment config management.

.. _install:

Install
------------------------------------------------------------------------------

``config_patterns`` is released on PyPI, so all you need is:

.. code-block:: console

    $ pip install config_patterns

To upgrade to latest version:

.. code-block:: console

    $ pip install --upgrade config_patterns
