Third-Party Integrations¶
Void works with the normal MkDocs plugin ecosystem. The recipes below are
drop-in: add the plugin to plugins: in mkdocs.yml, keep - void, and
the theme handles the rest. Every recipe on this page is built continuously by
the repository's Integrations CI job β if a recipe stops working, the check
fails.
Plugin ordering¶
MkDocs runs plugins in the order they appear in plugins:. A few rules of
thumb:
- Put
awesome-pagesfirst β it builds the navigation from folders and other plugins (andsection-index) consume that nav. - Keep
searchearly so later plugins can reference its output. git-revision-date-localizedandgit-authorsread your Git history, so they need a Git checkout (CI clones are fine).print-siteusually sits near the end β it renders every page into one combined document.voidlast is always safe: the theme reads thepage.metathat earlier plugins have written.
mkdocs-git-revision-date-localized-plugin¶
Adds a real "Last updated" date from your Git history. Void renders it
natively β the footer's theme.void.meta block reads
page.meta.git_revision_date_localized and shows it with your configured
label.
The plugin's internal id stays
git-revision-date-localized, so theplugins:config below is unchanged.
# mkdocs.yml
theme:
name: void
void:
meta:
enabled: true
show_last_updated: true
last_updated_label: "Last updated"
date_source: auto # auto | git | front_matter
plugins:
- search
- git-revision-date-localized:
enabled: true
fallback_to_build_date: true
type: date
enable_creation_date: false
- void
- Install with
pip install mkdocs-git-revision-date-localized-plugin. auto(default) prefers the Git date and falls back to the page'sdate:front matter;gituses only Git,front_matterignores Git entirely.- Without the plugin nothing breaks β the footer simply falls back to front matter or hides the row.
mkdocs-glightbox¶
Adds a lightbox to your images. Void already ships a built-in vanilla
lightbox (theme.void.content.typography.image_lightbox, on by default), so
use glightbox instead only if you want its feature set β and turn the built-in
one off to avoid double handling:
# mkdocs.yml
theme:
name: void
void:
content:
typography:
image_lightbox: false
plugins:
- search
- glightbox:
compact: false
auto_caption: true
- void
The built-in lightbox needs no JavaScript library and no extra pip install β consider keeping it if you only need click-to-zoom.
mkdocs-print-site-plugin¶
Renders a combined "print site" (single-page HTML you can save as PDF). The generated page is rendered with the active theme's own templates, so a Void site gets Void styling automatically:
# mkdocs.yml
plugins:
- search
- print-site:
add_to_navigation: true
print_page_basename: print_page
- void
The generated page lands at print_page/index.html and ships with the rest of
the site, so it works offline like every other Void page.
Install with
pip install mkdocs-print-site-plugin(the PyPI package is published under that name; the plugin idprint-siteused inplugins:is unchanged).
mkdocs-section-index¶
Makes navigation sections clickable when the folder contains an index page
(README.md or index.md):
docs/
βββ index.md
βββ guide/
βββ README.md # section index page
βββ usage.md
Note: section-index only adapts themes on its internal allowlist and logs a one-line warning for any other theme. Void' nav renders section pages natively (the section title becomes a clickable link that still nests its children), so the feature works β the warning is informational.
mkdocs-table-reader-plugin¶
Reads table files straight into your pages from CSV or Markdown β handy for keeping data in a single source file:
The rendered table picks up Void table styling automatically
(theme.void.content.tables).
Install with
pip install mkdocs-table-reader-plugin.
mkdocs-git-authors-plugin¶
Adds author information from your Git history to page.meta.git_authors:
# mkdocs.yml
plugins:
- search
- git-authors:
show_email_address: false
enable_creation_date: false
- void
Void passes page.meta.git_authors through untouched (it is the same
page.meta the theme reads elsewhere), so you can render it with your own
custom head/footer injection. The
meta footer itself only shows the date β it does not show authors by design.
Install with
pip install mkdocs-git-authors-plugin.
mkdocs-awesome-pages-plugin¶
Builds the navigation automatically from your folder structure (no explicit
nav:), with per-folder ordering and hiding through a .pages file:
# mkdocs.yml
plugins:
- awesome-pages:
collapse_single_pages: true
strict: false
- search
- section-index
- void
docs/
βββ guide/
βββ .pages # order, title, and hidden entries
βββ README.md
βββ usage.md
Install with
pip install mkdocs-awesome-pages-plugin.
Verified in CI¶
.github/workflows/integrations.yml builds a project that uses all seven
recipes at once and asserts the results (rendered "Last updated" date, print
page, clean strict build, void doctor exit 0). See the
Development page for how to run the same checks
locally.