What is typedoc?
TypeDoc is a documentation generator for TypeScript projects. It reads your TypeScript source code and its comments and produces an HTML documentation website. It is capable of creating readable and user-friendly documentation for TypeScript projects, which can be very helpful for both maintaining internal code and for sharing code with external users.
What are typedoc's main functionalities?
Generating Documentation
This command generates documentation for the TypeScript source files located in the 'src' directory and outputs the result to the 'docs' directory.
typedoc --out docs src
Customizing the Theme
This command generates documentation with a minimal theme, which is one of the built-in themes provided by TypeDoc.
typedoc --out docs src --theme minimal
Excluding Private Members
This command generates documentation while excluding private members from the output, making the documentation cleaner if private members are not intended to be part of the public API.
typedoc --out docs src --excludePrivate
Including Declaration Files
This command includes type declaration files (d.ts files) in the documentation generation process, which can be useful for documenting the types that are part of the project's external API.
typedoc --out docs src --includeDeclarations
Other packages similar to typedoc
jsdoc
JSDoc is a popular documentation generator for JavaScript. It uses comments in the source code to generate comprehensive documentation. While similar in purpose to TypeDoc, JSDoc is tailored for JavaScript and requires additional plugins to work well with TypeScript.
esdoc
ESDoc is another documentation generator for JavaScript, with support for ES6+ syntax. It provides features like coverage reporting and integrated test codes in the documentation. ESDoc is not as TypeScript-focused as TypeDoc and may require additional configuration for TypeScript projects.
TypeDoc
Documentation generator for TypeScript projects.
Documentation
Visit our website for more complete documentation and example API documentation:
https://typedoc.org.
There you can find an installation guide explaining
how to use typedoc from the cli, webpack, grunt, or gulp. There are additional guides explaining
how to extend typedoc using plugins and
themes.
Installation
TypeDoc runs on Node.js and is available as an NPM package. You can install TypeDoc
in your project's directory as usual:
$ npm install typedoc --save-dev
Like the TypeScript compiler, TypeDoc comes with a binary that can be called from anywhere
if you install TypeDoc as a global module. The name of the executable is typedoc
.
$ npm install typedoc --global
$ typedoc
Usage
Shell
TypeDoc accepts most of the command line arguments that the TypeScript compiler accepts. One major
difference is the fact that one may pass an entire directory instead of individual files to the documentation
generator. So in order to create a documentation for an entire project you simply type:
$ typedoc --out path/to/documentation/ path/to/typescript/project/
Arguments
For a complete list of the command line arguments run typedoc --help
or visit our website.
--out <path/to/documentation/>
Specifies the location the documentation should be written to. Defaults to ./docs
--mode <file|modules>
Specifies the output mode the project is used to be compiled with.--options
Specify a json option file that should be loaded. If not specified TypeDoc will look for 'typedoc.json' in the current directory.--json <path/to/output.json>
Specifies the location and file name a json file describing the project is written to. When specified no documentation will be generated.--ignoreCompilerErrors
Allows TypeDoc to still generate documentation pages even after the compiler has returned errors.
Source file handling
--exclude <pattern>
Exclude files by the given pattern when a path is provided as source. Supports standard minimatch patterns (see #170)--includeDeclarations
Turn on parsing of .d.ts declaration files.--excludeExternals
Do not document external files, highly recommended if turning on --includeDeclarations
.--excludeNotDocumented
Do not include the code symbols, that don't have doc comments. This option is useful,
if you want to document only small part of your symbols and do not show the remaining ones in the documentation.
TypeScript compiler
--tsconfig <path/to/tsconfig.json>
Specify a typescript config file that should be loaded. If not specified TypeDoc will look for 'tsconfig.json' in the current directory.
Theming
--theme <default|minimal|path/to/theme>
Specify the path to the theme that should be used.--name <Documentation title>
Set the name of the project that will be used in the header of the template.--readme <path/to/readme|none>
Path to the readme file that should be displayed on the index page. Pass none
to disable the index page
and start the documentation on the globals page.
Miscellaneous
--listInvalidSymbolLinks
Display the list of links that don't point to actual code symbols.--version
Display the version number of TypeDoc.--help
Display all TypeDoc options.
Contributing
This project is maintained by a community of developers. Contributions are welcome and appreciated.
You can find TypeDoc on GitHub; feel free to start an issue or create a pull requests:
https://github.com/TypeStrong/typedoc
For more information, read the contribution guide.
License
Copyright (c) 2015 Sebastian Lenz.
Copyright (c) 2016-2020 TypeDoc Contributors.
Licensed under the Apache License 2.0.