MKDocs plugin for rendering swagger & openapi files.
Project description
mkdocs-render-swagger-plugin
This is the Mkdocs plugin for rendering swagger & openapi schemas using Swagger UI. It is written in Python.
Usage
Install the plugin using pip install mkdocs-render-swagger-plugin
.
Add the following lines to your mkdocs.yml:
plugins:
- render_swagger
Example
Here's an example (courtesy of Scarf) of how the plugin renders swagger.
Referencing a local json
Place an OpenAPI json file in the same folder as the .md
file.
Enter !!swagger FILENAME!!
at the appropriate location inside the markdown file.
If you wish to reference any files on the filesytem (security risk), make sure
you enable allow_arbitrary_locations
in the config (mkdocs.yml) like so:
plugins:
- render_swagger:
allow_arbitrary_locations : true
Referencing an external json
You may reference an external OpenAPI json using the following syntax: !!swagger-http URL!!
.
Explicit declaration of the Swagger JS library
You can explicitly specify the swagger-ui css and js dependencies if you wish to not use the unpkg CDN.
To specify this use javascript
and css
in your mkdocs.yaml:
plugins:
- render_swagger:
javascript: assets/js/swagger-ui-bundle.js
css: assets/css/swagger-ui.css
Contributing & Developing Locally
After downloading and extracting the .tar.gz
, install this package locally using pip
and the --editable
flag:
pip install --editable ".[dev]"
You'll then have the render-swagger
package available to use in Mkdocs and pip
will point the dependency to this folder. You are then able to run the docs using mkdocs serve
. Make sure you restart the process between code changes as the plugin is loaded on startup.
MkDocs plugins and Swagger api
The Render Swagger MkDocs plugin uses a set of extensions and plugin APIs that MkDocs and Swagger UI supports. You can find more info about MkDocs plugins and Swagger UI on the official website of MkDocs and SwaggerUI.
The input OpenAPI files processed by the plugin should conform to the OpenAPI specification. It is generated by a few projects such as pydantic, FastAPI and others.
Disclaimer: This plugin is unofficial, and is not sponsored, owned or endorsed by mkdocs, swagger, or any other 3rd party.
Credits to @aviramha for starting this project.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file mkdocs_render_swagger_plugin-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: mkdocs_render_swagger_plugin-0.1.2-py3-none-any.whl
- Upload date:
- Size: 6.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0340d45e12a0f1633a4b8af2eb99ea75469006ddf418ef0f1acd51ed1e4969e4 |
|
MD5 | cc662e44e5eafa29181bd6a2ab5666e4 |
|
BLAKE2b-256 | de0bcf5e4e9529a8068d4b2def4b38540f7a5762283bdd5b652ee083b8a7c9c6 |