MkDocs vs TypeDoc
MkDocs
mkdocs.orgTypeDoc
typedoc.orgSide by side
| Figure | MkDocs | TypeDoc |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| API | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 0 | 1 |
| Spec score · Documentation Generators | 7.6 (#17) | 8.0 (#10) |
| Customization | Users can customize themes, install plugins, enable Markdown extensions, and configure many options. | Themes can change the look and feel of generated documentation, and plugins can add themes. |
| Installation | MkDocs is installed with the Python package manager using pip install mkdocs. | TypeDoc runs on Node.js and is available as an npm package. |
| Integrations | MkDocs documentation can be deployed to GitHub Pages and hosted on Amazon S3. | The GitHub Pages option generates a .nojekyll file, and source links can use GitHub or Bitbucket remotes. |
| License | MkDocs is distributed under the BSD license, which permits redistribution and use in source and binary forms subject to its conditions. | The TypeDoc repository identifies its license as Apache-2.0. |
| Purpose | MkDocs is a static site generator geared toward building project documentation from Markdown and a single YAML configuration file. | TypeDoc converts comments in TypeScript source code into HTML documentation or a JSON model. |
| Support | The project directs users to GitHub Discussions and GitHub Issues for help. | The project README invites users to open an issue or pull request on GitHub and points contributors to its contribution guide. |
Plans
In their own words
MkDocs
MkDocs is a static site generator for project documentation written in Markdown, with project settings held in a YAML file. It produces static HTML that can be published to GitHub Pages, Amazon S3, or another static-file host. Its development server provides a local preview and refreshes it when documentation changes; generated sites also include search that can link to matching sections. The command-line tools cover creating a project, serving a preview, building the site, checking dependencies, and deploying to GitHub Pages. MkDocs uses Python-Markdown and requires a recent Python version and pip. The built-in mkdocs and readthedocs themes are available alongside third-party and custom themes, while plugins, Markdown extensions, and configuration options allow further changes. The built-in mkdocs theme supports several locales, including English, German, Spanish, French, Japanese, and Chinese. MkDocs is free, available for Linux, macOS, Windows, and self-hosted use, and distributed under the BSD license. Third-party themes and plugins run their authors’ code without sandboxing.
TypeDoc
TypeDoc is a free TypeScript documentation generator that turns source comments into HTML pages or a JSON model. It builds from project exports and follows re-exports, allowing members declared elsewhere to appear in documentation. TSDoc and JSDoc tags are extracted, Markdown is accepted in comments, and fenced code blocks receive Shiki syntax highlighting. HTML and JSON are built in; Markdown output needs a plugin such as typedoc-plugin-markdown. A default theme is included, while plugins can add themes, alter conversion and symbol organization, or change display. Custom CSS and JavaScript can further adjust generated pages. Configuration can come from an options file, package.json, or tsconfig.json. TypeDoc runs on Node.js, uses the TypeScript compiler, and supports the current Node.js LTS or newer. For npm monorepos, the packages entry-point strategy can combine package documentation into one site. The project is Apache-2.0 licensed. Documentation warns that global installation can separate plugins and themes from the intended TypeDoc installation.