Skip to main content

MkDocs plugin for Kroki-Diagrams

Project description

mkdocs-kroki-plugin

This is a MkDocs plugin to embed Kroki-Diagrams into your documentation.

Setup

Install the plugin using pip:

pip install mkdocs-kroki-plugin

Activate the plugin in mkdocs.yml:

plugins:
  ...
  - kroki:

Config

Key Description
ServerURL URL of your kroki-Server, default: !ENV [KROKI_SERVER_URL, 'https://kroki.io']
FencePrefix Diagram prefix, default: kroki-
EnableBlockDiag Enable BlockDiag (and the related Diagrams), default: true
EnableBpmn Enable BPMN, default: true
EnableExcalidraw Enable Excalidraw, default: true
EnableMermaid Enable Mermaid, default: true
EnableDiagramsnet Enable diagrams.net (draw.io), default: false
HttpMethod Http method to use (GET or POST), default: GET
Note: On POST the retrieved images are stored next to the including page in the build directory
UserAgent User agent for requests to the kroki server, default: kroki.plugin/<version>
FileTypes File types you want to use, default: [svg]
Note: not all file formats work with all diagram types https://kroki.io/#support
FileTypeOverrides Overrides for specific diagram types to set the desired file type, default: empty
TagFormat How the image will be included in the resulting HTML, default: img
(img, object, svg)
FailFast Errors are raised as plugin errors, default: false

Example:

  - kroki:
      ServerURL: !ENV [KROKI_SERVER_URL, 'https://kroki.io']
      FileTypes:
        - png
        - svg
      FileTypeOverrides:
        mermaid: png
      FailFast: !ENV CI

Usage

Use code-fences with a tag of kroki-<Module> to replace the code with the wanted diagram.

Diagram options can be set as well.

Example for BlockDiag:

```kroki-blockdiag no-transparency=false
blockdiag {
  blockdiag -> generates -> "block-diagrams";
  blockdiag -> is -> "very easy!";

  blockdiag [color = "greenyellow"];
  "block-diagrams" [color = "pink"];
  "very easy!" [color = "orange"];
}
```

You can render diagram from file with @from_file: directive:

```kroki-bpmn
@from_file:path/to/diagram.bpmn
```

See Also

Diagram examples can be found here.

More information about installing a self-manged Kroki-Service here.

More Plugins for MkDocs can be found here

Pre-Release-Versions

Install the newest pre-release version using pip:

pip install -i https://test.pypi.org/simple/ mkdocs-kroki-plugin

Development

Setup:

git clone git@github.com:AVATEAM-IT-SYSTEMHAUS/mkdocs-kroki-plugin.git
cd mkdocs-kroki-plugin
pipx install hatch
pipx install pre-commit
pre-commit install

Run tests (for all supported python versions):

hatch test -a

Run static code analysis:

hatch fmt

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

mkdocs_kroki_plugin-0.9.0.tar.gz (9.8 kB view hashes)

Uploaded Source

Built Distribution

mkdocs_kroki_plugin-0.9.0-py3-none-any.whl (12.1 kB view hashes)

Uploaded Python 3

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