mkdocs-open-in-new-tab
MkDocs plugin to open outgoing links and PDFs in new tab.
Decision gist · record as of 2026-08-14
Yes, if you maintain a MkDocs site and want external links to open in new tabs without manual Markdown edits. The plugin is stable, has no security vulnerabilities, and adds minimal overhead. Dormant maintenance is acceptable here since the feature is simple and unlikely to break with MkDocs updates; however, verify compatibility with your specific MkDocs version and theme before relying on it for production.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction: pure Python wheel with only mkdocs as a runtime dependency.
- Maintenance is dormant—last release was 634 days ago, though the repository remains active with a recent commit on 2024-11-18.
- Suitable for stable, feature-complete use cases.
License · maintenance · safety
MIT (permissive) — MIT license (permissive) means you can use, modify, and distribute this plugin freely in commercial and private projects with minimal restrictions.
last release 2024-11-18 (634 days) · last repo commit 2024-11-18 · 44 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 197,746 downloads/mo, #9,749 on PyPI
Alternatives
Verify before relying
pip install mkdocs-open-in-new-tab
Then add to mkdocs.yml:
plugins:
- open-in-new-tab
Optionally configure:
plugins:
- open-in-new-tab:
add_icon: true- Whether the plugin works correctly with all mkdocs-material versions, especially its instant loading feature.
- Performance impact when applied to sites with thousands of links.
What it is and what it does
This plugin modifies the behavior of links in a MkDocs-generated site by injecting JavaScript that detects external links and files, then forces them to open in a new tab. It distinguishes between external URLs (by comparing hostname) and downloadable file types (PDF, Office documents, archives) and applies the `target="_blank"` and `rel="noopener"` attributes to them. Relative links within your documentation remain unaffected and open in the same tab.
The plugin is designed to improve user experience and accessibility by preventing external navigation from losing the reader's place in your documentation. It works by hooking into MkDocs' page context and injecting a small JavaScript file into every page. It includes optional styling to add a visual indicator (↗ arrow) next to links that will open in a new tab, and it explicitly handles compatibility with mkdocs-material's instant loading feature.
Use it for
- Documentation sites that link to external resources and want to keep readers on the site.
- Adding visual indicators to external links for better UX and accessibility.
- Ensuring PDF downloads and file links open in new tabs without modifying Markdown.
- Sites using mkdocs-material that need consistent link behavior across instant-loaded pages.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you maintain a MkDocs site and want external links to open in new tabs without manual Markdown edits.
The plugin is stable, has no security vulnerabilities, and adds minimal overhead. Dormant maintenance is acceptable here since the feature is simple and unlikely to break with MkDocs updates; however, verify compatibility with your specific MkDocs version and theme before relying on it for production.
Install
mkdocs-open-in-new-tab on PyPI
Before you install
Low friction: pure Python wheel with only mkdocs as a runtime dependency. Maintenance is dormant—last release was 634 days ago, though the repository remains active with a recent commit on 2024-11-18. Suitable for stable, feature-complete use cases.
License in practice
MIT license (permissive) means you can use, modify, and distribute this plugin freely in commercial and private projects with minimal restrictions.
Quickstart
pip install mkdocs-open-in-new-tab
Then add to mkdocs.yml:
plugins:
- open-in-new-tab
Optionally configure:
plugins:
- open-in-new-tab:
add_icon: true
Verify before relying
- Whether the plugin works correctly with all mkdocs-material versions, especially its instant loading feature.
- Performance impact when applied to sites with thousands of links.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.7 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagemkdocs |
| Maintenance | Dormant 634 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 197,746 / month, #9,749 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: mkdocs_open_in_new_tab-1.0.8-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “mkdocs external links new tab”
- mkdocs-open-in-new-tabA MkDocs plugin that injects JavaScript to automatically open…
- mkdocs-redirectsA MkDocs plugin that generates HTTP redirects for moved or renamed…
- mkdocs-link-markerA MkDocs plugin that automatically marks external links and email…
Give your agent the search over MCP, or paste the wish link into any chat.
More Documentation packages
Docutils converts plaintext documentation in reStructuredText format into multiple output formats including HTML, XML, and LaTeX using a modular processing system.
Sphinx generates professional documentation from reStructuredText source files, producing HTML, PDF, EPUB, and other formats with automatic cross-references, code highlighting, and hierarchical navigation.
Griffe extracts the complete structure and signatures of Python programs to generate API documentation or detect breaking changes in your project's public API.
Install it if you need to programmatically inspect Python code structure, generate API docs, or enforce API stability in CI.
A Sphinx extension that outputs documentation in serialized HTML formats (JSON and pickle) alongside standard HTML.
Alabaster is a clean, responsive Sphinx theme for documentation that requires Python 3.10 or newer and Sphinx 6.2 or newer.
A Sphinx extension that generates HTML help files from reStructuredText documentation source.
See also mkdocs-link-marker · mkdocs-video · mkdocs-print-site-plugin · mkdocs-with-pdf · mkdocs-markdownextradata-plugin · mkdocs-gen-files · mkdocs-awesome-pages-plugin · mkdocs-simple-hooks · mkdocs-table-reader-plugin · mkdocs-autorefs