Metadata-Version: 2.1
Name: flask-classful-apispec
Version: 0.1.8
Summary: Auto docs generation from marshmallow schema for flask classfy
Home-page: https://github.com/dev-rijan/flask-classful-apispec
Author: Rijan adhikari
Author-email: rijanadhikari@gmail.com
License: MIT
Project-URL: Issues, https://github.com/dev-rijan/flask-classful-apispec/issues
Description: Flask classful apispec
        ======================
        
        A pluggable API specification generator generator for `Flask classful <https://flask-classful.teracy.org/>`_ based on `apispec <https://apispec.readthedocs.io/en/latest/>`_
        
        Features
        ========
        - Utilities for parsing flask classful docstrings
        - Support for `marshmallow <https://marshmallow.readthedocs.io/>`_
        
        Installation
        ============
        
        ::
        
            $ pip install flask-classful-apispec
        
        Usage
        ===================
        
        .. code-block:: python
        
            import json
            from flask import Flask
            from flask_classful import FlaskView
            from flask_classful_apispec import APISpec
            from marshmallow import Schema, fields
        
            app = Flask(__name__)
        
            app.config["DOC_TITLE"] = "Swagger petstore"
            app.config["DOC_VERSION"] = "0.1.1"
            app.config["DOC_OPEN_API_VERSION"] = "3.0.2"
        
            spec = APISpec(app)
        
            pets = [
                {'id': 0, 'name': 'Kitty', 'category': 'cat'},
                {'id': 1, 'name': 'Coco', 'category': 'dog'}
            ]
        
            class PetSchema(Schema):
                id = fields.Integer()
                name = fields.String()
                category = fields.String()
        
            class PetView(FlaskView):
                def index(self):
                    """A pet api endpoint.
                    ---
                    description: Get a list of pets
                    responses:
                      200:
                        schema: PetSchema
                    """
                    return PetSchema(many=True).dumps(pets)
        
            PetView.register(app)
        
            with app.test_request_context():
            spec.paths(PetView, app)
            print(json.dumps(spec.to_dict(), indent=2))
        
            if __name__ == "__main__":
                app.run()
        
        Generated OpenAPI Spec
        ======================
        
        
        Documentation
        =============
        - For apispec see  `apispec <https://apispec.readthedocs.io/en/latest/>`_
        - For Flask Clasful view see  `Flask classful <https://flask-classful.teracy.org/>`_
        - For Schema see `marshmallow <https://marshmallow.readthedocs.io/>`_
        
        License
        =======
        
        MIT licensed. See the bundled `LICENSE <https://github.com/dev-rijan/flask-classful-apispec/blob/master/LICENSE>`_ file for more details.
        
        
Keywords: flask-classfull,flask-classful-swagger,apispec,swagger,openapi,specification,documentation,spec,rest,api,web,flask,frameworks
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.6
Provides-Extra: dev
Provides-Extra: lint
Provides-Extra: tests
