https://github.com/coding-kitties/flask-swagger-generator
A simple to use flask swagger generator working with the Flask web framework.
https://github.com/coding-kitties/flask-swagger-generator
Last synced: 5 months ago
JSON representation
A simple to use flask swagger generator working with the Flask web framework.
- Host: GitHub
- URL: https://github.com/coding-kitties/flask-swagger-generator
- Owner: coding-kitties
- License: mit
- Created: 2020-11-30T19:47:24.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2022-11-11T08:48:31.000Z (over 3 years ago)
- Last Synced: 2025-09-23T22:20:32.350Z (9 months ago)
- Language: Python
- Size: 90.8 KB
- Stars: 7
- Watchers: 2
- Forks: 6
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Flask Swagger Generator
Flask swagger generator is a library to create Swagger Open API definitions
for Flask based applications. Swagger is an Interface Description Language for describing REST
APIs expressed using JSON and YAML.
## Installing
Install and update using pip:
```
pip install flask-swagger-generator
```
## Documentation
COMING SOON
## A Simple Example
```python
from flask import Blueprint, jsonify
from flask import Flask
from flask_swagger_generator.generators import Generator
from flask_swagger_generator.specifiers import SwaggerVersion
from flask_swagger_generator.utils import SecurityType
swagger_destination_path = '/static/swagger.yaml'
# Create the bluepints
blueprint = Blueprint('objects', __name__)
# Create the flask app
app = Flask(__name__)
# Create swagger version 3.0 generator
generator = Generator.of(SwaggerVersion.VERSION_THREE)
# Add security, response and request body definitions
@generator.security(SecurityType.BEARER_AUTH)
@generator.response(status_code=200, schema={'id': 10, 'name': 'test_object'})
@generator.request_body({'id': 10, 'name': 'test_object'})
@blueprint.route('/objects/', methods=['PUT'])
def update_object(object_id):
return jsonify({'id': 1, 'name': 'test_object_name'}), 201
app.register_blueprint(blueprint)
generator.generate_swagger(app, destination_path=swagger_destination_path)
```