Metadata-Version: 1.1
Name: ngoschema
Version: 0.2.1
Summary: definition of classes with json-schema, object management and code-generation
Home-page: https://github.com/numengo/python-ngoschema
Author: ('C\xc3\xa9dric ROMAN',)
Author-email: roman@numengo.com
License: GNU General Public License v3
Description: ========
        Overview
        ========
        
        
        
        Description
        ===========
        
        I'm Cédric ROMAN.
        
        ``ngoschema`` aims at building classes based on a `JSON schema
        <https://spacetelescope.github.io/understanding-json-schema/index.html>`_.
        
        User can declare its attributes in a schema (along with their type, default
        value) and the class will be built with accessors to check and validate data.
        
        User can add methods and override setters/getters, but the library provides a
        boiler plate to automatically create the class, nicely instrumented (with loggers,
        exception handling, type checking, data validation, etc...).
        
        Objects created are come with managers to load/save them into files.
        
        Serialization tools are provided that can be used to do code generation.
        
        The library is build on top of `python-jsonschema-object
        <https://github.com/cwacek/python-jsonschema-objects>`_, with a lot of hacking,
        which allows to create classes
        from a JSON-schema.
        
        Both projects use the library `python-jsonchema
        <http://python-jsonschema.readthedocs.io/en/latest/validate/>`_, a python
        implementation for JSON schema validation.
        
        * Free software: GNU General Public License v3
        
        Installation
        ============
        
        ::
        
            pip install ngoschema
        
        Documentation
        =============
        
        https://python-ngoschema.readthedocs.io/
        
        Development
        ===========
        
        To run the all tests run::
        
            tox
        
        Note, to combine the coverage data from all the tox environments run:
        
        .. list-table::
            :widths: 10 90
            :stub-columns: 1
        
            - - Windows
              - ::
        
                    set PYTEST_ADDOPTS=--cov-append
                    tox
        
            - - Other
              - ::
        
                    PYTEST_ADDOPTS=--cov-append tox
        
        
        Changelog
        =========
        
        0.1.0 (2018-06-04)
        ------------------
        
        * First release on PyPI.
        
Keywords: json-schema, schema, class_builder, data_validation, type_checking, mixins, object_serialization, code_generation
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: Unix
Classifier: Operating System :: POSIX
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Utilities
Requires: pathlib
Requires: future
Requires: click
Requires: ngofile
Requires: attrs
Requires: dpath
Requires: pyrsistent
Requires: configparser2
Requires: appdirs
Requires: wrapt
Requires: jinja2
Requires: arrow
Requires: inflection
Requires: six
