Skip to main content

MkDocs plugin and extension to creates mindmaps from markdown using markmap

Project description

mkdocs-markmap

Beautiful and simple mindmaps written in markdown.

MIT license PyPI Latest Release Open Issues Open PRs

This is a plugin and an extension for mkdocs to add markmap.

Prerequisits

This plugin was tested with, but is not limited to:

  • Python 3.9
  • mkdocs 1.1

Quickstart

Install

pip install mkdocs-markmap

Configure

Add this to mkdocs.yml:

plugins:
  - markmap

Usage

This plugin supports code blocks of markdown as follows:

```markmap
# Root

## Branch 1

* Branchlet 1a
* Branchlet 1b

## Branch 2

* Branchlet 2a
* Branchlet 2b
```

It can also make use of file includes to keep your markdown tidy:

Look at this beautiful mindmap:

{!mindmap.mm.md!}

Advanced Settings

There are more options available for mkdocs.yml (shown values are defaults):

plugins:
  - markmap:
      base_path: docs
      encoding: utf-8
      file_extension: .mm.md
      d3_version: 6.7.0
      lib_version: 0.11.6
      view_version: 0.2.6

In addition, feel free to define your favourite source urls like this:

extra_javascript:
  - https://unpkg.com/d3@6.7.0/dist/d3.min.js
  - https://unpkg.com/markmap-lib@0.11.6/dist/browser/index.min.js
  - https://unpkg.com/markmap-view@0.2.6/dist/index.min.js

:warning: The urls need to contain one of these keywords to be considered as deviation from default:

  • markmap-d3
  • markmap-lib
  • markmap-view

Troubleshooting

Nav tree lists markmaps

  1. Move your markmap files to a separate folder next to docs, e.g. mindmaps
  2. Configure base_path accordingly (see Advanced Settings)

Static javascript files not working

  1. Ensure naming of javascript files matches the scheme (see Advanced Settings)
  2. Copy all javascript files to doc/js/, otherwise mkdocs will not copy static files to site/
  3. Define all files in extra_javascript, e.g.
extra_javascript:
  - js/markmap-d3.js
  - js/markmap-lib.js
  - js/markmap-view.js

Usage of proxy is prevent download of javascript files

Usually proxies should be supported by requests, which is used for downloading all required javascript files. If the issue remains, try downloading the files yourself and store them accordingly (see Static javascript files not working)

Credits :clap:

Some of the development approaches are based on implementations provided by the following projects:

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-markmap-2.2.1b.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

mkdocs_markmap-2.2.1b-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file mkdocs-markmap-2.2.1b.tar.gz.

File metadata

  • Download URL: mkdocs-markmap-2.2.1b.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for mkdocs-markmap-2.2.1b.tar.gz
Algorithm Hash digest
SHA256 30f7049af17965249c4c0cf2c124c9e91248f1cbc71ad09dc0250f8f92359e82
MD5 b864f8c2c9f1ed609f581b08c4c2a984
BLAKE2b-256 038e315bc59cfb643ce60747d8d2372c276103a53f59b1e055530bb232f58ba4

See more details on using hashes here.

File details

Details for the file mkdocs_markmap-2.2.1b-py3-none-any.whl.

File metadata

  • Download URL: mkdocs_markmap-2.2.1b-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for mkdocs_markmap-2.2.1b-py3-none-any.whl
Algorithm Hash digest
SHA256 9d21caad2ba5c68cebe9c4f86401bedddf6879e8d47cd1b8cfb1f9f9f3646b8a
MD5 47ab844b19a03016b885f76ea77729ca
BLAKE2b-256 a26e8e6886c198bec09e921f0754fbdc6764a7756154f369fddff6dd68cd8309

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