Metadata-Version: 2.1
Name: scooch
Version: 1.0.2
Summary: A python module for configuring hierarchical class structures in yaml with defaults
Home-page: http://www.mattcmccallum.com/scooch/docs
Author: Matt C. McCallum
Author-email: scooch@mattcmccallum.com
License: Apache 2.0
Project-URL: Documentation, http://www.mattcmccallum.com/scooch/docs
Project-URL: Bug Reports, https://github.com/PandoraMedia/scooch/issues
Project-URL: Source, https://github.com/PandoraMedia/scooch
Description: 
        # Scooch
        
        Scooch is a recursive acronym for **S**cooch **C**onfigures **O**bject 
        **O**riented **C**lass **H**ierarchies, and that's exactly what this package 
        does. It is a configuration package for python codebases that simplifies the 
        problem of configuring parameters in python code by translating YAML 
        configuration files into object oriented class hierarchies.
        
        # Who needs Scooch?
        
        Scooch is useful for people who need an accessible interface to enable 
        tweakability in their code. ML practitioners are a good example. They 
        typically write code that is intended to be continuously experimented with and 
        adjusted in response to observations from running the code. As such, it is useful 
        to abstract these tweakable parameters from the code into a config file, providing 
        three major benefits:
        
         - The config file provides a centralized location for adjustable parameters of 
         interest in the code, improving iteration and workflow.
         - Loading, saving and adjusting the configuration of your code is separated 
         from the many other working variables and data structures that may exist in 
         code.
         - The configuration of any part of the code can be hashed, logged, and indexed, 
         to provide a record of the code configuration at any one time.
        
        # Why use Scooch?
        
        There are many other projects out there that endeavor to translate config files 
        into parameters in python code, for example:
        
         - [Gin](https://github.com/google/gin-config)
         - [Sacred](https://sacred.readthedocs.io/en/stable/index.html)
         - [Hydra](https://hydra.cc/)
        
        However, what makes Scooch different is that it not only translates config 
        parameters into variables in your code, but into object oriented class 
        hierarchies. This means configurations can benefit from object oriented concepts 
        such as Inheretance, Encapsulation, Abstraction and Polymorphism.
        
        For more information about how to use, and why to use Scooch. Please refer to 
        the [documentation](http://www.mattcmccallum.com/scooch/docs).
        
Keywords: scooch python configuration machine learning
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.6
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: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Mathematics
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.6
Description-Content-Type: text/markdown
