Security News
GitHub Removes Malicious Pull Requests Targeting Open Source Repositories
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
JSDoc is a documentation generator for JavaScript. It parses comments in your source code with JSDoc tags and generates an HTML documentation website.
Generating API documentation
This code sample shows how to use JSDoc comments to document a constructor function for a book. When JSDoc processes this, it will generate documentation for the Book function, including its parameters and their types.
/**
* Represents a book.
* @constructor
* @param {string} title - The title of the book.
* @param {string} author - The author of the book.
*/
function Book(title, author) {
this.title = title;
this.author = author;
}
Documenting a class and its methods
This code sample demonstrates how to document a class and its constructor, as well as a method within the class. JSDoc will generate documentation for the Point class, its constructor, and the getDistanceTo method, including parameter and return types.
/**
* Class representing a point.
*/
class Point {
/**
* Create a point.
* @param {number} x - The x value.
* @param {number} y - The y value.
*/
constructor(x, y) {
this.x = x;
this.y = y;
}
/**
* Get the distance from this point to another point.
* @param {Point} point - The point to get the distance to.
* @returns {number} The distance.
*/
getDistanceTo(point) {
// ... implementation ...
}
}
Documenting module exports
This code sample shows how to document a module and a function that it exports. JSDoc will generate documentation for the module and the exported function, including the function's parameters and return value.
/**
* @module myModule
*/
/**
* A function that does something.
* @param {number} input - The input number.
* @returns {number} The result.
*/
exports.myFunction = function(input) {
// ... implementation ...
};
TypeDoc is a documentation generator that is similar to JSDoc but is specifically designed for TypeScript projects. It reads TypeScript source files and produces API documentation from the comments. Compared to JSDoc, TypeDoc is more suited for TypeScript due to its understanding of TypeScript-specific features.
ESDoc is a good documentation generator for JavaScript (ES6) projects. It focuses on the ECMAScript 2015 (ES6) syntax and has features like coverage reporting, which shows how much of your code is documented. ESDoc also supports plugin architecture, allowing for additional functionality to be added.
An API documentation generator for JavaScript.
Want to contribute to JSDoc? Please read CONTRIBUTING.md
.
You can run JSDoc on either Node.js or Mozilla Rhino.
Native support for Node.js is available in JSDoc 3.3.0 and later. JSDoc supports Node.js 0.10 and later.
You can install JSDoc in your project's node_modules
folder, or you can
install it globally.
To install the latest alpha version:
npm install jsdoc@"<=3.3.0"
To install the latest development version:
npm install git+https://github.com/jsdoc3/jsdoc.git
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
Or if you installed JSDoc globally, simply 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.
All versions of JSDoc 3 run on a customized version of Mozilla Rhino, which requires Java. You can run JSDoc 3 on Java 1.6 and later.
To install JSDoc, download a .zip file for the latest development version or a previous release.
You can also use git to clone the JSDoc repository:
git clone git+https://github.com/jsdoc3/jsdoc.git
The JSDoc repository includes a
customized version of Mozilla Rhino. Make
sure your Java classpath does not include any other versions of Rhino. (On OS X,
you may need to remove the file ~/Library/Java/Extensions/js.jar
.)
Note: In JSDoc 3.3.0 and later, if you need to run JSDoc on Mozilla Rhino, do not install JSDoc with npm. Use one of the methods described above.
On OS X, Linux, and other POSIX systems, to generate documentation for the file
yourJavaScriptFile.js
:
./jsdoc yourJavaScriptFile.js
Or on Windows:
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.
The JSDoc community has created numerous templates and other tools to help you generate and customize your documentation. Here are just a few:
jsdoc
to Stack
Overflow.JSDoc 3 is copyright (c) 2011-2014 Michael Mathews micmath@gmail.com and the contributors to JSDoc.
JSDoc 3 is free software, licensed under the Apache License, Version 2.0. See
the file LICENSE.md
in this distribution for more details.
FAQs
An API documentation generator for JavaScript.
The npm package jsdoc receives a total of 858,338 weekly downloads. As such, jsdoc popularity was classified as popular.
We found that jsdoc demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub removed 27 malicious pull requests attempting to inject harmful code across multiple open source repositories, in another round of low-effort attacks.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.