Metadata-Version: 1.1
Name: djburger
Version: 0.10.1
Summary: Framework for views in big projects on Django.
Home-page: https://github.com/orsinium/djburger
Author: orsinium
Author-email: master_fess@mail.ru
License: GNU Lesser General Public License v3.0
Download-URL: https://github.com/orsinium/djburger/tarball/master
Description: DjBurger
        ========
        
        .. figure:: wiki/source/imgs/logo.png
           :alt: DjBurger logo
        
           DjBurger logo
        
        |Build Status| |Documentation| |PyPI version| |Status| |Code size|
        |License|
        
        **DjBurger** -- framework for safe and maintainable web-projects.
        
        What DjBurger do?
        
        -  Split Django views into
           `steps <https://djburger.readthedocs.io/en/latest/philosophy.html#dataflow>`__
           for secure and clean code.
        -  Provide built-in objects for all steps.
        -  Integrates this `many side
           libraries <https://djburger.readthedocs.io/en/latest/external.html>`__
           like Django REST Framework and Marshmallow.
        
        DjBurger doesn't depend on Django. You can use it in any projects if you
        want.
        
        Read more into
        `documentation <https://djburger.readthedocs.io/en/latest/>`__.
        
        Key principles
        --------------
        
        1. Validation logic is separate from the main logic.
        2. Reusable logic for many views.
        3. Reusable input and output data formats.
        4. More clean views.
        
        Dataflow
        --------
        
        1. **Decorators**. Feel free to use any side Django decorators like
           ``csrf_exempt``.
        2. **Parser**. Parse request body.
        3. **PreValidator**. Validate and clear request.
        4. **PreRenderer**. Render and return PreValidation errors response.
        5. **Controller**. Main logic: do some things.
        6. **PostValidator**. Validate and clear response.
        7. **PostRenderer**. Render and return PostValidation errors response.
        8. **Renderer**. Render successful response.
        
        .. figure:: wiki/source/imgs/scheme.png
           :alt: Scheme
        
           Scheme
        
        Required only Controller and Renderer.
        
        Explore
        -------
        
        1. Read `documentation <https://djburger.readthedocs.io/en/latest/>`__.
        2. See `example <example/>`__ project.
        3. For quick help just inspect djburger from python console (for
           example, ``help('djburger.views')``).
        4. If you have some questions then `view
           issues <https://github.com/orsinium/djburger/issues>`__ or `create
           new <https://github.com/orsinium/djburger/issues/new>`__.
        5. If you found some mistakes then fix it and `create Pull
           Request <https://github.com/orsinium/djburger/compare>`__.
           Contributors are welcome.
        6. `Star this project on
           github <https://github.com/orsinium/djburger>`__ :)
        
        .. |Build Status| image:: https://travis-ci.org/orsinium/djburger.svg?branch=master
           :target: https://travis-ci.org/orsinium/djburger
        .. |Documentation| image:: https://readthedocs.org/projects/djburger/badge/
           :target: https://djburger.readthedocs.io/en/latest/
        .. |PyPI version| image:: https://img.shields.io/pypi/v/djburger.svg
           :target: https://pypi.python.org/pypi/djburger
        .. |Status| image:: https://img.shields.io/pypi/status/djburger.svg
           :target: https://pypi.python.org/pypi/djburger
        .. |Code size| image:: https://img.shields.io/github/languages/code-size/orsinium/djburger.svg
           :target: https://github.com/orsinium/djburger
        .. |License| image:: https://img.shields.io/pypi/l/djburger.svg
           :target: LICENSE
        
Keywords: djburger framework django contracts pre post validation
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Plugins
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
Classifier: Programming Language :: Python
Requires: six
