Metadata-Version: 2.4
Name: fractal-output
Version: 2.0.0
Summary: Provides a presentation and transformation layer for complex data output
Home-page: https://github.com/jefersondaniel/fractal-output
Author: Jeferson Daniel
Author-email: jeferson.daniel412@gmail.com
License: MIT
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 5 - Production/Stable
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.2
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 :: 3.7
Classifier: Programming Language :: Python :: 3.8
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: home-page
Dynamic: license
Dynamic: summary

Fractal Output
======================================

|Build Status| |Version| |Pyversions|

Provides a presentation and transformation layer for complex data output, the like found in RESTful APIs, and works really well with JSON. Think of this as a view layer for your JSON/YAML/etc. Based on https://fractal.thephpleague.com/

Documentation
~~~~~~~~~~~~~

Usage
^^^^^

Install:
''''''''

.. code:: bash

   $ pip install fractal_output

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

.. code:: python

    from fractal_output import Manager, Transformer, Item

    class UserTransformer(Transformer):
        def transform(self, user):
            return {
                'id': user.id,
                'firstName': user.first_name
            }

    user = YourUserClass()
    transformer = UserTransformer()
    item = Item(user, transformer)

    manager = Manager()
    manager.create_data(item).to_json()

''''

.. |Build Status| image:: https://travis-ci.org/jefersondaniel/fractal-output.svg
   :target: https://travis-ci.org/jefersondaniel/fractal-output

.. |Version| image:: https://badge.fury.io/py/fractal_output.svg
   :target: https://pypi.python.org/pypi/fractal_output

.. |Pyversions| image:: https://img.shields.io/pypi/pyversions/fractal_output.svg
   :target: https://pypi.python.org/pypi/fractal_output
