Documentation

Last updated in git: 2026-06-11

Ignore directories for markdown sites

Markdown-mode sites can now exclude directories from rendering and from static serving, both automatically for hidden directories and explicitly via site.toml.

What changed

  • Any path component that starts with a dot (for example .git/, .cursor/, .venv/) is now ignored everywhere the site backend touches the store: page scanning, section listings, and the markdown request handler. Files under these directories never become pages and are never served as static assets.

  • site.toml gained a new ignore_dirs field — a list of root-relative directories that receive the same treatment as hidden directories:

    ignore_dirs = ["out", "vendor", "generated/cache"]
    

    Entries match a directory and everything beneath it.

  • Requests that resolve to an ignored path now return 404 instead of leaking the underlying file.

Why this matters

Repositories that back a markdown site often also hold tooling state and build output: .git/, editor caches, generated HTML, vendored dependencies. Until now those files were scanned alongside content and could end up in section listings or be served directly. The new defaults remove hidden directories from consideration, and ignore_dirs covers the non-hidden cases without forcing authors to restructure the repo.

See Site structure → site.toml for the field reference and examples.

updates site markdown