Catharsis caches parse results by default; if you parse the same type expression twice, with the same options, you get the same object each time. When the user passes the `--debug` flag, we expose the parsed type for each parameter as an enumerable property of the doclet. If two parameters used the same type expression, the resulting doclet could contain a circular reference. This change disables the Catharsis cache, so that Catharsis returns a new object for each parsed type, which prevents circular references. As a result, this change fixes an issue with the `-X` flag, and with some JSDoc templates.
JSDoc
An API documentation generator for JavaScript.
Want to contribute to JSDoc? Please read CONTRIBUTING.md.
Installation and Usage
JSDoc supports stable versions of Node.js 8.15.0 and later. You can install
JSDoc globally or in your project's node_modules folder.
To install the latest version on npm globally (might require sudo;
learn how to fix this):
npm install -g jsdoc
To install the latest version on npm locally and save it in your package's
package.json file:
npm install --save-dev jsdoc
Note: By default, npm adds your package using the caret operator in front of
the version number (for example, ^3.6.3). We recommend using the tilde
operator instead (for example, ~3.6.3), which limits updates to the most
recent patch-level version. See
this Stack Overflow answer for
more information about the caret and tilde operators.
If you installed JSDoc locally, the JSDoc command-line tool is available in
./node_modules/.bin. To generate documentation for the file
yourJavaScriptFile.js:
./node_modules/.bin/jsdoc yourJavaScriptFile.js
If you installed JSDoc globally, run the jsdoc command:
jsdoc yourJavaScriptFile.js
By default, the generated documentation is saved in a directory named out. You
can use the --destination (-d) option to specify another directory.
Run jsdoc --help for a complete list of command-line options.
Templates and tools
The JSDoc community has created templates and other tools to help you generate and customize your documentation. Here are a few of them:
Templates
- jaguarjs-jsdoc
- DocStrap (example)
- jsdoc3Template (example)
- minami
- docdash (example)
- tui-jsdoc-template (example)
- better-docs (example)
Build tools
Other tools
For more information
- Documentation is available at jsdoc.app.
- Contribute to the docs at jsdoc/jsdoc.github.io.
- Join JSDoc's Slack channel.
- Ask for help on the JSDoc Users mailing list.
- Post questions tagged
jsdocto Stack Overflow.
License
JSDoc is copyright (c) 2011-present Michael Mathews micmath@gmail.com and the contributors to JSDoc.
JSDoc is free software, licensed under the Apache License, Version 2.0. See the
LICENSE file for more details.