Skip to main content

A MkDocs plugin to generate an interactive graph of your documentation.

Project description

MkDocs Network Graph Plugin

Add an interactive knowledge network graph to your Material for MkDocs documentation project

PyPI - Version PyPI - Python Version GitHub License GitHub Actions Workflow Status Documentation

A powerful Material for MkDocs plugin that generates beautiful, interactive graph visualizations of your documentation structure and relationships.

demo

DocumentationQuick StartConfigurationContributing


Table of Contents

Features

Interactive Visualization Smart Navigation Fully Customizable Lightweight
Interactive Graph Visualization of your documentation structure Dual View Modes to switch between a full-site overview and local page connections Theme Integration that seamlessly blends with Material for MkDocs Performance Optimized with minimal impact on build times and a responsive design

Quick Start

Get up and running in under 2 minutes:

1. Install the plugin

pip install mkdocs-network-graph-plugin

2. Enable in your mkdocs.yml

plugins:
  - graph

3. Build your docs

mkdocs serve

That's it! Your documentation now includes an interactive graph visualization.

Installation

Using pip (recommended)

pip install mkdocs-network-graph-plugin

Using uv (faster)

uv pip install mkdocs-network-graph-plugin

Using pipx (isolated)

pipx install mkdocs-network-graph-plugin

Development Installation

For contributors, this is the recommended setup:

  1. Clone the repository

    git clone https://github.com/develmusa/mkdocs-network-graph-plugin.git
    cd mkdocs-network-graph-plugin
    
  2. Set up the development environment

    # Sync with the lockfile
    uv sync
    # Install required Python versions for testing
    uv python install 3.10 3.11 3.12 3.13
    # Install in editable mode with dev dependencies
    uv pip install -e '.[dev]'
    # Install pre-commit hooks
    uv run pre-commit install
    

For more details, see the developer guide.

Requirements

  • Python: 3.10+
  • MkDocs: Compatible with latest versions
  • Theme: Designed for Material for MkDocs (v9.0.0+)

Configuration

Basic Configuration

plugins:
  - graph:
      name: "title"        # Use page titles for node names
      debug: false         # Disable debug logging

Advanced Configuration

plugins:
  - graph:
      name: "file_name"    # Use file names instead of titles
      debug: true          # Enable verbose logging for troubleshooting

Configuration Options

Option Type Default Description
name string "title" Node naming strategy: "title" or "file_name"
debug boolean false Enable debug logging for development

Customization

Customize the graph appearance using CSS variables in your extra.css:

:root {
  /* Node styling */
  --md-graph-node-color: #1976d2;
  --md-graph-node-color--hover: #1565c0;
  --md-graph-node-color--current: #ff5722;

  /* Link styling */
  --md-graph-link-color: #757575;

  /* Text styling */
  --md-graph-text-color: #212121;
}

Available CSS Variables

Variable Description Default
--md-graph-node-color Default node color Theme primary
--md-graph-node-color--hover Node hover color Darker primary
--md-graph-node-color--current Current page node color Theme accent
--md-graph-link-color Connection line color Theme text (muted)
--md-graph-text-color Node label text color Theme text

Documentation

Comprehensive documentation is available at develmusa.github.io/mkdocs-network-graph-plugin

Documentation Sections

Contributing

We welcome contributions! For a complete guide on how to contribute, please see the developer guide.

To get started, set up your environment by following the Development Installation instructions. From there, you can run tests and linting using nox:

# Run tests
uv run nox -s tests

# Run linting
uv run nox -s lint

Contribution Guidelines

  • Bug Reports: Use the issue tracker
  • Feature Requests: Open an issue with your proposal
  • Pull Requests: Fork, create a feature branch, and submit a PR
  • Documentation: Help improve our docs

License

This project is licensed under the MIT License - see the LICENSE file for details

Acknowledgments

Related Projects

Explore other tools with Markdown documentation graph visualization:


Star this project if you find it useful!

Made with AI and ❤️ by develmusa

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_network_graph_plugin-1.0.2.tar.gz (15.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mkdocs_network_graph_plugin-1.0.2-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file mkdocs_network_graph_plugin-1.0.2.tar.gz.

File metadata

File hashes

Hashes for mkdocs_network_graph_plugin-1.0.2.tar.gz
Algorithm Hash digest
SHA256 9810958de3bb747bae053a722d73cb753d4e6993e2392b4c27832305f5e922b0
MD5 e96387f2b6ba1619cac9c487fc18a1a5
BLAKE2b-256 aee26faab761d57fdaf500deab25ef5f3836033a672206be9191c5915b69ad60

See more details on using hashes here.

Provenance

The following attestation bundles were made for mkdocs_network_graph_plugin-1.0.2.tar.gz:

Publisher: ci.yaml on develmusa/mkdocs-network-graph-plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mkdocs_network_graph_plugin-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for mkdocs_network_graph_plugin-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 52a31dfd5819d16681f07ffc33ccb1cf47f7e5a4ebb719924f588c5f1a32606c
MD5 7b9d958cf833964a4bd4681325e05fa9
BLAKE2b-256 838e6d1c83cbc051d289f61e76212d177a6102a97f669a7f605b0b594dc0f658

See more details on using hashes here.

Provenance

The following attestation bundles were made for mkdocs_network_graph_plugin-1.0.2-py3-none-any.whl:

Publisher: ci.yaml on develmusa/mkdocs-network-graph-plugin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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