Skip to content

A plugin for MKDocs for rendering swagger & openapi schemas using SwaggerUI.

License

Notifications You must be signed in to change notification settings

OlegEV/mkdocs-render-swagger-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

Referencing a local json

Place an OpenAPI json in the same folder as the the .md file.

Enter !!swagger FILENAME!! at the appropriate location inside the markdown file.

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.

Keep in mind, the filename has to be swagger-ui.css for the CSS and swagger-ui-bundle.js for the JS.

To specify this use extra_javascript and extra_css in your mkdocs.yaml:

extra_javascript:
  - assets/js/swagger-ui-bundle.js

extra_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 .

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 MkDocks plugins and Swagger UI on the official website of MkDocks 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.

About

A plugin for MKDocs for rendering swagger & openapi schemas using SwaggerUI.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%