Skip to main content

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


Download files

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

Source Distribution

py_swagger_ui-1.1.0.tar.gz (7.5 MB view details)

Uploaded Source

Built Distribution

py_swagger_ui-1.1.0-py3-none-any.whl (7.6 MB view details)

Uploaded Python 3

File details

Details for the file py_swagger_ui-1.1.0.tar.gz.

File metadata

  • Download URL: py_swagger_ui-1.1.0.tar.gz
  • Upload date:
  • Size: 7.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for py_swagger_ui-1.1.0.tar.gz
Algorithm Hash digest
SHA256 d2660e53f130c2093fd29eaa1ea07fcf2a832a15914abf865de493da5b97926d
MD5 72e3d776432b7d87f429ae466d6878ad
BLAKE2b-256 9294c2484ced144c2dd48d7939b30762ff11f9b9311db0f6f877217d4163203e

See more details on using hashes here.

File details

Details for the file py_swagger_ui-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for py_swagger_ui-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0e6703e8834b2d412cf48d8065dcf1f6fa865e41142dca5a51e9b2060050a3b9
MD5 eb1e386c04f9aa58fb1a9fc4a76db750
BLAKE2b-256 2120040f4f715bca4f2efcbe415d65e29e661b4a18badb5ac4e0773f7500f80a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page