Comparison
Dossiers vs MkDocs (Material)
MkDocs builds a beautiful book for one project. Dossiers publishes a living stack of documents.
MkDocs — especially with the Material theme — is the de-facto standard for project documentation in the Python world, and deservedly so: clean output, client-side search that works on any static host, and a huge plugin ecosystem.
Its model is a book: chapters, a hand-maintained navigation tree in mkdocs.yml, one project. Specifications don’t behave like chapters. They are independent documents with their own statuses, authors, and lifecycles, added by many people over years. Dossiers builds the index automatically from each document’s frontmatter — there is no navigation file to edit, rebase, or forget.
At a glance
| Dossiers | MkDocs (Material) | |
|---|---|---|
| Monthly cost | Free — MIT-licensed CLI | Free (open source); formerly-paid Insiders features are free for everyone since late 2025 |
| Open source | Yes — MIT | Yes — BSD (MkDocs), MIT (Material) |
| Where content lives | Markdown files in your Git repository | Markdown files in your Git repository |
| Authoring | Any editor or IDE; plain Markdown with YAML frontmatter | Any editor; Markdown plus a hand-maintained mkdocs.yml navigation |
| Review & approval | Pull requests — drafts appear automatically next to published specs | Bring your own — e.g. deploy previews from your hosting provider |
| Version history | Full Git history of every document | Full Git history |
| Full-text search | Full-text search in the hosted service; static builds use browser search | Client-side search built in — works even on static hosting |
| Access control | Google Workspace domain or GitHub org (hosted); static sites can sit behind your own auth | None — output is public unless you add your own auth layer |
| Self-hosting | Yes — static output hosts anywhere, or run the CLI server | Yes — static output |
| Lock-in | None — plain Markdown files stay in your repo | Low — Markdown, though Material admonitions and plugins are ecosystem-specific |
Prices are rounded list prices as of July 2026 and change often — always check the vendor’s pricing page. Dossiers hosted-service pricing will be announced at launch.
Which one is for you?
Choose MkDocs (Material) if…
- You're documenting one product or library as a coherent, ordered manual
- You want the Material ecosystem: plugins, admonitions, versioned docs
- You need client-side search on purely static hosting
- Your team already lives in the Python toolchain
Choose Dossiers if…
- Your documents are independent peers, not chapters in a manual
- You don't want to maintain navigation in mkdocs.yml by hand
- Draft specs should appear automatically from open pull requests
- You want a single binary instead of a Python environment
The bottom line
For a product manual with a curated reading order, MkDocs with Material is excellent and hard to beat. For a growing collection of independent specs, policies, and ADRs, Dossiers removes the navigation file, the theme setup, and the plugin curation — and adds status metadata and PR drafts that MkDocs has no concept of.
Frequently asked questions
MkDocs has search on static hosting — does Dossiers?
Static Dossiers builds rely on the browser’s find-in-page; full-text search across all documents comes with the hosted service or the CLI’s server mode. If offline client-side search on a static host is a hard requirement, Material for MkDocs has the edge here.
Can I migrate from MkDocs to Dossiers?
Yes — your content is already Markdown in Git. Move the files, add frontmatter for status and authors where useful, and delete mkdocs.yml. Material-specific admonition syntax may need adjusting.
See it with your own specs
Point Dossiers at a folder of Markdown files — you'll have a site before the kettle boils.