Metadata-Version: 2.1
Name: JSONSchema2PoPo2
Version: 2.0.8
Summary: Converts a JSON Schema to a Plain Old Python Object class
Home-page: https://github.com/mikedombo/JSONSchema2PoPo2
Author: Michael Dombrowski
Author-email: michael@mikedombrowski.com
License: MIT License
Description: # JSONSchema2PoPo2
        *Forked from [github.com/frx08/jsonschema2popo](https://github.com/frx08/jsonschema2popo)*
        
        A converter to extract 'Plain Old Python Object' classes from JSON Schema files.
        Similar to the Java project [JSONSchema2PoJo](https://github.com/joelittlejohn/jsonschema2pojo/).
        Currently compatible with Python 3.4+ (when using enums, otherwise any version should be fine).
        
        ## Installation
        ```
        pip install jsonschema2popo2
        ```
        
        ## Usage
        
        ### Basic:
        ```
        jsonschema2popo2 -o /path/to/output_file.py /path/to/json_schema.json
        ```
            
        ### Options:
        - -t, --use-types - Add MyPy typings.
        - -ct, --constructor-type-check - Validate provided types in constructor. Default only type checks when setting property values and not when setting them in the constructor.
        - -t, --use-slots - Add a `__slots__` to each generated class to be more memory efficient.
        
        ### Encode Generated Object to JSON:
        ```python
        import json
        
        g = GeneratedClass()
        json.dumps(g.as_dict())
        ```
        
        ### Decode JSON into Generated Object:
        ```python
        import json
        g = GeneratedClass.from_dict(json.loads(data))
        ```
        
        ### JSON Schema Format
        This library is largely compatible with JSONSchema2PoJo and how that library reads the JSON Schema to generate Java.
        Specifically, for enumerations, this library supports setting the `javaEnumNames` array in JSON Schema for an enum to give names
        to the enum values that will be generated in the Python output.
        
Keywords: python json-schema code-generator
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Software Development :: Build Tools
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.4
Description-Content-Type: text/markdown
