What is typedoc-plugin-markdown?
The typedoc-plugin-markdown npm package is a plugin for TypeDoc that allows you to generate Markdown documentation from TypeScript projects. It extends TypeDoc's capabilities by providing support for various Markdown formats, making it easier to integrate with static site generators and other documentation tools.
What are typedoc-plugin-markdown's main functionalities?
Generate Markdown Documentation
This configuration file for TypeDoc uses the typedoc-plugin-markdown to generate Markdown documentation. The 'out' option specifies the output directory, and various 'exclude' options are used to filter out unnecessary parts of the documentation.
module.exports = {
plugins: ['typedoc-plugin-markdown'],
out: 'docs',
mode: 'file',
includeDeclarations: true,
excludeExternals: true,
excludePrivate: true,
excludeProtected: true,
excludeNotExported: true,
readme: 'none'
};
Support for Custom Themes
This configuration demonstrates how to use a custom theme with the typedoc-plugin-markdown. The 'theme' option is set to 'custom-theme', which allows you to customize the look and feel of the generated Markdown documentation.
module.exports = {
plugins: ['typedoc-plugin-markdown'],
out: 'docs',
theme: 'custom-theme',
includeDeclarations: true,
excludeExternals: true,
excludePrivate: true,
excludeProtected: true,
excludeNotExported: true,
readme: 'none'
};
Integration with Static Site Generators
This configuration shows how to set up the typedoc-plugin-markdown for integration with static site generators. The 'entryPoints' option specifies the entry points for the documentation, and 'entryPointStrategy' is set to 'expand' to include all relevant files.
module.exports = {
plugins: ['typedoc-plugin-markdown'],
out: 'docs',
mode: 'file',
includeDeclarations: true,
excludeExternals: true,
excludePrivate: true,
excludeProtected: true,
excludeNotExported: true,
readme: 'none',
entryPoints: ['src/index.ts'],
entryPointStrategy: 'expand'
};
Other packages similar to typedoc-plugin-markdown
typedoc
TypeDoc is a documentation generator for TypeScript projects. While it primarily generates HTML documentation, it can be extended with plugins like typedoc-plugin-markdown to support other formats. TypeDoc is the core tool that typedoc-plugin-markdown builds upon.
documentation
The documentation package is a documentation generator for JavaScript and TypeScript projects. It supports multiple output formats, including HTML and Markdown. Compared to typedoc-plugin-markdown, it offers a more general approach to documentation generation and is not specifically tailored for TypeScript.
jsdoc
JSDoc is a popular documentation generator for JavaScript projects. It can be used with TypeScript through type annotations and supports various output formats, including Markdown. While it is more commonly used for JavaScript, it can be adapted for TypeScript projects, making it a versatile alternative to typedoc-plugin-markdown.
typedoc-plugin-markdown
A plugin for TypeDoc that exposes a theme and additional arguments for rendering markdown.
Installation
npm install --save-dev typedoc typedoc-plugin-markdown
Usage
Specify the theme
The plugin provides an additional markdown theme:
shell
$ node_modules/.bin/typedoc --theme markdown
npm script
"scripts": {
"docs": "typedoc --theme markdown"
}
Additional arguments
The plugin exposes the following additional arguments:
-
--mdEngine <github|bitbucket|gitbook>
The markdown rendering engine:
"github": Optimised for GitHub/CommonMark (Default).
"bitbucket": Renders markdown to support Bitbucket anchor linking and more.
"gitbook": Adds SUMMARY.md file to generate a book's table of contents and sets header levels to display correct sub-navigation menu. (Optimised for newest version of GitBook).
-
--mdHideSources
Suppress source file linking from output.
-
--mdSourceRepo <path.to.repo>
(Will be ignored on GitHub repositories)
The source repo to use for source file linking.
For bitbucket use: https://bitbucket.org/owner/repository_name
.
Example output
Acknowledgements