On this page
JSDoc
Getting Started
- Getting Started with JSDoc 3
- A quick-start to documenting JavaScript with JSDoc.
- Using namepaths with JSDoc 3
- A guide to using namepaths with JSDoc 3.
- Command-line arguments to JSDoc
- About command-line arguments to JSDoc.
- Configuring JSDoc with a configuration file
- How to configure JSDoc using a configuration file.
- Configuring JSDoc's default template
- How to configure the output from JSDoc's default template.
- Block and inline tags
- Overview of block and inline JSDoc tags.
- About JSDoc plugins
- How to create and use JSDoc plugins.
- Using the Markdown plugin
- Enable Markdown support in JSDoc.
- Tutorials
- Adding tutorials to your API documentation.
- Including a Package File
- How to show package details in your documentation.
- Including a README File
- How to include a README file in your documentation.
- License
- License information for JSDoc 3.
JSDoc Examples
- ES 2015 Classes
- How to add JSDoc comments to ECMAScript 2015 classes.
- ES 2015 Modules
- How to add JSDoc comments to ECMAScript 2015 modules.
- CommonJS Modules
- How to add JSDoc comments to CommonJS and Node.js modules.
- AMD Modules
- How to add JSDoc comments to AMD and RequireJS modules.
Block Tags
- @abstract (synonyms: @virtual)
- This member must be implemented (or overridden) by the inheritor.
- @access
- Specify the access level of this member (private, package-private, public, or protected).
- @alias
- Treat a member as if it had a different name.
- @async
- Indicate that a function is asynchronous.
- @augments (synonyms: @extends)
- Indicate that a symbol inherits from, and adds to, a parent symbol.
- @author
- Identify the author of an item.
- @borrows
- This object uses something from another object.
- @callback
- Document a callback function.
- @class (synonyms: @constructor)
- This function is intended to be called with the "new" keyword.
- @classdesc
- Use the following text to describe the entire class.
- @constant (synonyms: @const)
- Document an object as a constant.
- @constructs
- This function member will be the constructor for the previous class.
- @copyright
- Document some copyright information.
- @default (synonyms: @defaultvalue)
- Document the default value.
- @deprecated
- Document that this is no longer the preferred way.
- @description (synonyms: @desc)
- Describe a symbol.
- @enum
- Document a collection of related properties.
- @event
- Document an event.
- @example
- Provide an example of how to use a documented item.
- @exports
- Identify the member that is exported by a JavaScript module.
- @external (synonyms: @host)
- Identifies an external class, namespace, or module.
- @file (synonyms: @fileoverview, @overview)
- Describe a file.
- @fires (synonyms: @emits)
- Describe the events this method may fire.
- @function (synonyms: @func, @method)
- Describe a function or method.
- @generator
- Indicate that a function is a generator function.
- @global
- Document a global object.
- @hideconstructor
- Indicate that the constructor should not be displayed.
- @ignore
- Omit a symbol from the documentation.
- @implements
- This symbol implements an interface.
- @inheritdoc
- Indicate that a symbol should inherit its parent's documentation.
- @inner
- Document an inner object.
- @instance
- Document an instance member.
- @interface
- This symbol is an interface that others can implement.
- @kind
- What kind of symbol is this?
- @lends
- Document properties on an object literal as if they belonged to a symbol with a given name.
- @license
- Identify the license that applies to this code.
- @listens
- List the events that a symbol listens for.
- @member (synonyms: @var)
- Document a member.
- @memberof
- This symbol belongs to a parent symbol.
- @mixes
- This object mixes in all the members from another object.
- @mixin
- Document a mixin object.
- @module
- Document a JavaScript module.
- @name
- Document the name of an object.
- @namespace
- Document a namespace object.
- @override
- Indicate that a symbol overrides its parent.
- @package
- This symbol is meant to be package-private.
- @param (synonyms: @arg, @argument)
- Document the parameter to a function.
- @private
- This symbol is meant to be private.
- @property (synonyms: @prop)
- Document a property of an object.
- @protected
- This symbol is meant to be protected.
- @public
- This symbol is meant to be public.
- @readonly
- This symbol is meant to be read-only.
- @requires
- This file requires a JavaScript module.
- @returns (synonyms: @return)
- Document the return value of a function.
- @see
- Refer to some other documentation for more information.
- @since
- When was this feature added?
- @static
- Document a static member.
- @summary
- A shorter version of the full description.
- @this
- What does the 'this' keyword refer to here?
- @throws (synonyms: @exception)
- Describe what errors could be thrown.
- @todo
- Document tasks to be completed.
- @tutorial
- Insert a link to an included tutorial file.
- @type
- Document the type of an object.
- @typedef
- Document a custom type.
- @variation
- Distinguish different objects with the same name.
- @version
- Documents the version number of an item.
- @yields (synonyms: @yield)
- Document the value yielded by a generator function.
Inline Tags
- {@link} (synonyms: {@linkcode}, {@linkplain})
- Link to another item in the documentation.
- {@tutorial}
- Link to a tutorial.
Contribute
- JSDoc project on GitHub
- Contribute to JSDoc.
- Use JSDoc project on GitHub
- Contribute to the JSDoc documentation.
© 2011–2017 the contributors to the JSDoc 3 documentation project
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://jsdoc.app/index.html