Swagger UI bundled for usage with Python
Project description
py_swagger_ui
This package contains the static files for swagger-ui as a python package.
Basic configuration options are templated with the Jinja2 templating language.
This package is intended to be webserver-agnostic, so it only includes the static files, and some very basic configuration.
Getting Started
You can import the swagger_ui_path from the py_swagger_ui package like so:
from py_swagger_ui import swagger_ui_path
You can easily serve up this directory as all static files to get the default swagger-ui distribution. Here’s an example in flask:
from py_swagger_ui import swagger_ui_path
from flask import Flask, Blueprint, send_from_directory, render_template
swagger_bp = Blueprint(
'swagger_ui',
__name__,
static_url_path='',
static_folder=swagger_ui_path,
template_folder=swagger_ui_path
)
app = Flask(__name__, static_url_path='')
app.register_blueprint(swagger_bp, url_prefix='/ui')
if __name__ == "__main__":
app.run()
You may wish to override some of the configuration variables. Included is a jinaj2 templated file where you can modify these parameters. You can add another route to render this template with your desired configuration like so:
SWAGGER_UI_CONFIG = {
"openapi_spec_url": "https://petstore.swagger.io/v2/swagger.json"
}
@swagger_bp.route('/')
def swagger_ui_index():
return render_template('index.j2', **SWAGGER_UI_CONFIG)
Have a look at example.py for a complete server for the Flask webserver.
License
Since this is just repackaging swagger-ui releases, the license comes from the swagger ui project (https://github.com/swagger-api/swagger-ui).
All vendored code is published under the Apache 2.0 License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for py_swagger_ui-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e6703e8834b2d412cf48d8065dcf1f6fa865e41142dca5a51e9b2060050a3b9 |
|
MD5 | eb1e386c04f9aa58fb1a9fc4a76db750 |
|
BLAKE2b-256 | 2120040f4f715bca4f2efcbe415d65e29e661b4a18badb5ac4e0773f7500f80a |