Skip to main content

swagger_ui_bundle - swagger-ui files in a pip package

Project description

swagger_ui_bundle

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 swagger_ui_bundle package like so:

from swagger_ui_bundle import swagger_ui_path

# or if you need a specific version
from swagger_ui_bundle import swagger_ui_2_path
from swagger_ui_bundle import swagger_ui_3_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 swagger_ui_bundle 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 by SmartBear Software under the Apache 2.0 License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for swagger-ui-bundle, version 0.0.6
Filename, size File type Python version Upload date Hashes
Filename, size swagger_ui_bundle-0.0.6-py2-none-any.whl (3.5 MB) File type Wheel Python version py2 Upload date Hashes View hashes
Filename, size swagger_ui_bundle-0.0.6-py3-none-any.whl (3.5 MB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size swagger_ui_bundle-0.0.6.tar.gz (3.5 MB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page