skillfed

mkdocs-section-index

MkDocs plugin to allow clickable sections that lead to an index page

mkdocs-section-index v0.3.12 1.7M downloads/30d#3,652 on PyPI96
Permissive license MIT Active released

What it is and what it does

This MkDocs plugin solves a core limitation of MkDocs navigation: normally, section headers are not clickable and cannot link to a page. The plugin enables a hybrid nav item that acts as both a section container and a clickable page by merging an index.md file into the section itself. When you structure your nav with a section containing an index.md as its first child, the plugin combines them into a single nav item that is both clickable (linking to the index page) and able to hold subsections and child pages.

The plugin works by introducing a special "section-page" object into MkDocs' nav structure and then patching the templates of supported themes (material, readthedocs, nature) to render these hybrid items correctly. It requires Python 3.10 or later and depends on mkdocs and properdocs. The codebase is actively maintained and carries no known security vulnerabilities.

Use it for:

  • Create documentation where category headers are clickable landing pages with overview content and links to subcategories
  • Build hierarchical docs where each section has both an introduction page and nested child pages
  • Migrate documentation from systems that support clickable sections without restructuring your entire nav
  • Use index.md files as section introductions that are also accessible via the nav hierarchy

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

MkDocs plugin that makes section headers clickable by merging an index page into the section itself, allowing sections to function as both navigation containers and destination pages.

Yes. The plugin solves a genuine UX gap in MkDocs with low install friction, active maintenance, permissive licensing, and no security vulnerabilities. Install it if you use material, readthedocs, or nature themes and want clickable section headers. If you use a different theme, verify that template patching will work or that your theme already supports hybrid section-page items.

Install

mkdocs-section-index on PyPI

pip

pip install mkdocs-section-index

uv

uv add mkdocs-section-index

poetry

poetry add mkdocs-section-index

Installing mkdocs-section-index

Before you install

Low friction: pure Python wheel with only mkdocs and properdocs as runtime dependencies. Active maintenance with a recent release (120 days ago) and a stable codebase (96 stars, no archived status).

License in practice

MIT license (permissive) means you can use, modify, and distribute this plugin freely with minimal restrictions, making it safe for both commercial and open-source documentation projects.

Quickstart

pip install mkdocs-section-index

# In mkdocs.yml, add to plugins:
plugins:
  - search
  - section-index

# Then structure nav with index.md as first child of a section:
nav:
  - Borgs:
    - borgs/index.md
    - Bar: borgs/bar.md

Requires Python 3.10 or later. Theme support is limited to material, readthedocs, and nature; other themes require custom template patches.

Verify before relying

  • Whether the plugin works with MkDocs versions beyond the current stable release
  • Performance impact on large documentation sites with many sections
  • Compatibility with other MkDocs plugins beyond search

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — mkdocs, properdocs
Maintenance actively maintained — 120 days since the last release
Last repo commit
First released
Downloads 1,686,302/month — #3,652 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: mkdocs_section_index-0.3.12-py3-none-any.whl

Keywords: mkdocs, mkdocs-plugin

Development Status :: 5 - Production/StableEnvironment :: ConsoleEnvironment :: Web EnvironmentIntended Audience :: Information TechnologyLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: DocumentationTopic :: Software Development :: DocumentationTopic :: Text Processing :: Markup :: MarkdownTyping :: Typed

Tags

mkdocs clickable sectionsmkdocs section index pagemkdocs navigation indexmkdocs section as pagemkdocs plugin section linkmkdocs hybrid section page
mkdocs-pluginnavigation

More Documentation packages

docutils

Docutils converts plaintext documentation in…

unclear · top 1,000 on PyPI

Sphinx

Sphinx generates professional documentation…

permissive · top 1,000 on PyPI

griffe

Griffe extracts the complete structure and…

permissive · top 1,000 on PyPI

sphinxcontrib-serializinghtml

A Sphinx extension that outputs documentation…

permissive · top 1,000 on PyPI

alabaster

Alabaster is a clean, responsive Sphinx theme…

permissive · top 1,000 on PyPI

sphinxcontrib-htmlhelp

A Sphinx extension that generates HTML help…

permissive · top 1,000 on PyPI

mkdocs-awesome-pages-plugin

A plugin for MkDocs that lets you customize…

permissive · top 5,000 on PyPI

mkdocs-literate-nav

MkDocs plugin that lets you define site…

permissive · top 5,000 on PyPI

mkdocs-awesome-nav

A MkDocs plugin that lets you customize your…

permissive · top 5,000 on PyPI

mkdocs-same-dir

A ProperDocs plugin that allows placing the…

permissive · top 15,000 on PyPI

mkdocs-monorepo-plugin

Enables building multiple sets of documentation…

permissive · top 5,000 on PyPI

mkdocs-multirepo-plugin

Merges documentation from multiple Git…

permissive · top 15,000 on PyPI

mkdocs-print-site-plugin

MkDocs plugin that generates a combined print…

permissive · top 15,000 on PyPI

mkdocs-include-dir-to-nav

A MkDocs plugin that automatically expands…

permissive · top 15,000 on PyPI

mkdocs-gen-files

MkDocs plugin that generates documentation…

permissive · top 5,000 on PyPI

mkdocs-simple-hooks

A MkDocs plugin that lets you define custom…

permissive · top 15,000 on PyPI