What is jsdoc-parse?
The jsdoc-parse npm package is a tool for parsing JSDoc comments in JavaScript files and generating JSON output. It is useful for extracting documentation information from code comments and can be integrated into documentation generation workflows.
What are jsdoc-parse's main functionalities?
Parsing JSDoc comments
This feature allows you to parse JSDoc comments from JavaScript code and generate a JSON representation of the documentation. The code sample demonstrates how to parse a simple JSDoc comment and output the parsed JSON.
const jsdocParse = require('jsdoc-parse');
const fs = require('fs');
const jsdocComments = `
/**
* Adds two numbers together.
* @param {number} a - The first number.
* @param {number} b - The second number.
* @returns {number} The sum of the two numbers.
*/
function add(a, b) {
return a + b;
}
`;
jsdocParse({ src: jsdocComments }).then(output => {
console.log(JSON.stringify(output, null, 2));
});
Generating JSON output
This feature allows you to generate JSON output from JSDoc comments and save it to a file. The code sample demonstrates how to parse JSDoc comments and write the resulting JSON to a file named 'output.json'.
const jsdocParse = require('jsdoc-parse');
const fs = require('fs');
const jsdocComments = `
/**
* Multiplies two numbers together.
* @param {number} a - The first number.
* @param {number} b - The second number.
* @returns {number} The product of the two numbers.
*/
function multiply(a, b) {
return a * b;
}
`;
jsdocParse({ src: jsdocComments }).then(output => {
fs.writeFileSync('output.json', JSON.stringify(output, null, 2));
});
Other packages similar to jsdoc-parse
documentation
The 'documentation' package is a documentation generation tool that supports JSDoc comments. It can generate HTML, Markdown, and JSON documentation from JavaScript code. Compared to jsdoc-parse, 'documentation' offers more output format options and additional features like linting and serving documentation as a web server.
jsdoc
The 'jsdoc' package is a popular tool for generating HTML documentation from JSDoc comments. It provides a wide range of configuration options and supports plugins for extending its functionality. While jsdoc-parse focuses on parsing and generating JSON output, 'jsdoc' is more comprehensive in terms of generating complete documentation websites.
esdoc
The 'esdoc' package is a documentation generator for JavaScript that supports ES6+ syntax. It provides features like coverage reports, test integration, and a plugin system. Compared to jsdoc-parse, 'esdoc' offers more advanced features and is tailored for modern JavaScript syntax.
jsdoc-parse
Transforms jsdoc data into something more suitable for use as template input. Also adds a few tags to the default set:
- Support for new tags in the input javascript
@category <string>
: Useful for grouping identifiers by category.@done
: Used to mark @todo
items as complete.@typicalname
: If set on a class, namespace or module, child members will documented using this typical name as the parent name. Real-world typical name examples are $
(the typical name for jQuery
instances), _
(underscore) etc.@chainable
: Set to mark a method as chainable (has a return value of this
).
Command-line usage
This module is built into jsdoc-to-markdown, you can see the output using this command:
$ jsdoc2md --json <files>
© 2014-24 Lloyd Brookes <75pound@gmail.com>.
Tested by test-runner. Documented by jsdoc-to-markdown.