GithubHelp home page GithubHelp logo

isabella232 / gulp-jsdoc3 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ckeditor/gulp-jsdoc3

0.0 0.0 0.0 41 KB

gulp integration for jsdoc3 cli

License: Apache License 2.0

JavaScript 100.00%

gulp-jsdoc3's Introduction

gulp-jsdoc3

NPM version NPM DM Build Status Coverage Status Dependency Status

jsdoc plugin for gulp

Installation

Install gulp-jsdoc as a development dependency:

npm install --save-dev gulp-jsdoc3

Usage

var jsdoc = require('gulp-jsdoc3');

gulp.task('doc', function (cb) {
    gulp.src(['README.md', './src/**/*.js'], {read: false})
        .pipe(jsdoc(cb));
});

By default, documentation is output to docs/gen. gulp-jsdoc3 does not modify the source vinyl stream so the output location can only be specified via config, not gulp.dest(). You can see all the default options passed to jsdoc in src/jsdocConfig.json.

You can also pass in your own config to override the defaults. All CLI options can be specified here.

var jsdoc = require('gulp-jsdoc3');

gulp.task('doc', function (cb) {
    var config = require('./jsdoc.json');
    gulp.src(['README.md', './src/**/*.js'], {read: false})
        .pipe(jsdoc(config, cb));
});

Another good example is in this project's gulpfile!

Overriding the default layout

ink-docstrap is used as the default layout but you can easily override it in your config like this:

{
    "templates": {
        "default": {
            // Set my own layout file
            "layoutFile": "./layout.tmpl"
        }
    }
}

Other config tips and tricks

Use include and exclude patterns to filter the globs from gulp even more. For example, only include .js,.jsdoc, or .jsx files that do not start with _:

"source": {
    "includePattern": ".+\\.js(doc|x)?$",
    "excludePattern": "(^|\\/|\\\\)_"
}

If you want to document multiple markdown or html files, enable tutorial support:

"tutorials": "path/to/tutorials"

Debugging

Set env variable: DEBUG=gulp-jsdoc3

Notes

This is a reasonable attempt to wrap jsdoc using gulp as thinly as possible use the jsdoc config to pass in files from gulp. jsdoc does not allow for piped input, so this attempt may be considered a gulp anti-pattern. It also does not pass on output to be piped elsewhere.

I would like to thank Mangled Deutz @ gulp-jsdoc for the original implementation.

License

Apache-2.0 License

gulp-jsdoc3's People

Contributors

andrewguenther avatar kdelmonte avatar kevincolten avatar mlucool avatar mwittig avatar reinmar avatar urosjarc avatar vbardales avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.