skillfed

mkdocs-same-dir

ProperDocs plugin to allow placing properdocs.yml in the same directory as documentation

mkdocs-same-dir v0.1.5 133.3K downloads/30d#11,523 on PyPI47
Permissive license MIT Active released

What it is and what it does

mkdocs-same-dir is a plugin for ProperDocs that relaxes the normal directory layout constraint, allowing you to place your properdocs.yml configuration file in the same directory as your documentation files instead of requiring it to live in a parent directory. This simplifies project structure for documentation-heavy repositories where you want the config and content colocated.

The plugin works by monkeypatching ProperDocs' internals to permit docs_dir to be set to `.` (the current directory). A key side effect is that non-Markdown files at the root of the docs directory are no longer picked up automatically—only Markdown files are included. The maintainer has committed to keeping the plugin compatible with ProperDocs updates, though the implementation's reliance on internal patching means compatibility cannot be guaranteed indefinitely.

Use it for:

  • Organizing documentation projects where config and content live together in a single directory for simpler repository structure.
  • Migrating existing documentation layouts to colocate properdocs.yml with markdown files without restructuring the entire docs folder.
  • Building documentation sites where the configuration file is version-controlled alongside the documentation it describes.

Worth the install?

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

A ProperDocs plugin that allows placing the properdocs.yml configuration file in the same directory as your documentation files, rather than requiring it to be in a separate parent directory.

Yes, if you use ProperDocs and want to colocate properdocs.yml with your docs directory. The plugin is actively maintained, has no known vulnerabilities, and carries a permissive MIT license. The main trade-off is the monkeypatch approach—it works reliably today but depends on the maintainer tracking ProperDocs changes. Suitable for projects where this layout simplification justifies that dependency.

Install

mkdocs-same-dir on PyPI

pip

pip install mkdocs-same-dir

uv

uv add mkdocs-same-dir

poetry

poetry add mkdocs-same-dir

Installing mkdocs-same-dir

Before you install

Low install friction with a pure Python wheel. Actively maintained as of 2026-04-17 with recent activity. Depends only on mkdocs and properdocs, both standard documentation tools.

License in practice

MIT license permits unrestricted use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.

Quickstart

pip install mkdocs-same-dir

# In properdocs.yml (placed in your docs directory):
site_name: foo
docs_dir: .
site_dir: ../site

plugins:
  - search
  - same-dir

Requires ProperDocs to be installed and configured; the plugin monkeypatches ProperDocs internals and may break with major ProperDocs updates.

Verify before relying

  • Whether the monkeypatch approach remains compatible with future ProperDocs versions beyond the maintainer's stated commitment.
  • Performance implications when docs_dir is set to the root directory with many non-Markdown files present.

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 — 119 days since the last release
Last repo commit
First released
Downloads 133,271/month — #11,523 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: mkdocs_same_dir-0.1.5-py3-none-any.whl

Keywords: mkdocs, mkdocs-plugin, properdocs

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: 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 :: DocumentationTyping :: Typed

Tags

mkdocs config same directoryproperdocs plugin configurationmkdocs documentation layoutproperdocs yml placementmkdocs docs directory config
mkdocs-pluginproperdocs

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-include-markdown-plugin

A MkDocs plugin that includes content from…

permissive · top 15,000 on PyPI

mkdocs-redirects

A MkDocs plugin that generates HTTP redirects…

permissive · top 5,000 on PyPI

mkdocs-multirepo-plugin

Merges documentation from multiple Git…

permissive · top 15,000 on PyPI

mkdocs-monorepo-plugin

Enables building multiple sets of documentation…

permissive · top 5,000 on PyPI

properdocs

ProperDocs is a static site generator that…

permissive · top 5,000 on PyPI

mkdocs-section-index

MkDocs plugin that makes section headers…

permissive · top 5,000 on PyPI

mkdocs-literate-nav

MkDocs plugin that lets you define site…

permissive · top 5,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

MkDocs generates static HTML documentation…

permissive · top 5,000 on PyPI