1.0.0 • Published 6 years ago

grunt-plugin-esdoc v1.0.0

Weekly downloads
1
License
Zlib
Repository
github
Last release
6 years ago

Grunt Plugin: ESDoc

Build status npm version Dependencies

A Grunt plugin for the ES2015+ documentation tool ESDoc.

Getting Started

This plugin requires Grunt >= 0.4.0

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-plugin-esdoc

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks("grunt-plugin-esdoc");

Usage

MyClass.js
/**
 * Description of MyClass.
 */

export default class MyClass {

	/**
	 * Description of the method.
	 *
	 * @param {Number} param - Description of the parameter.
	 * @return {Number} Description of the return value.
	 */

	method(param) {}

}
Gruntfile.js
grunt.initConfig({
	esdoc: {
		compile: {
			options: {
				plugins: [{
					"name": "esdoc-standard-plugin"
				}]
			},
			src: "src",
			dest: "docs"
		}
	}
});

Call the esdoc task to generate the documentation. Use --verbose to see all ESDoc log messages.

grunt esdoc [--verbose]

You may also integrate the task into your build sequence:

grunt.registerTask("default", ["lint", "test", "esdoc"]);

Configuration

All ESDoc options defined under options are passed to ESDoc. You may also specify additional plugin-specific options:

OptionDescriptionDefault
coverageThresholdAffects the color of the coverage report in the console. Has no effect if coverage is not available. Expressed as a percentage.100.0
verboseEnables exhaustive ESDoc logging.false
grunt.initConfig({
	esdoc: {
		compile: {
			options: {
				verbose: true,
				coverageThreshold: 95.0,
				plugins: [{
					name: "esdoc-standard-plugin",
					option: {
						test: {
							source: "./test/",
							interfaces: ["suite", "test"],
							includes: ["(spec|Spec|test|Test)\\.js$"],
							excludes: ["\\.config\\.js$"]
						}
					}
				}]
			},
			src: "./path/to/src",
			dest: "./path/to/esdoc/output"
		}
	}
});

Alternatively, you can specify a config path to a file containing the configuration options for ESDoc.

esdoc.json
{
	"coverageThreshold": 95.0,
	"source": "src",
	"destination": "docs",
	"plugins": [{"name": "esdoc-standard-plugin"}]
}
Gruntfile.js
grunt.initConfig({
	esdoc: {
		compile: {
			options: {
				config: "esdoc.json"
			}
		}
	}
});

Note that src and dest override source and destination if they are defined.

Contributing

Maintain the existing coding style. Lint and test your code.