Added jsdoc2md to generate api reference documentation to markdown, and organized docs into 'api' and 'guide'

This commit is contained in:
Braydon Fuller 2014-12-18 18:38:47 -05:00
parent f77b1cd62c
commit f89612f9de
22 changed files with 34 additions and 3 deletions

View File

@ -37,7 +37,10 @@ var jshint = require('gulp-jshint');
var mocha = require('gulp-mocha');
var runSequence = require('run-sequence');
var shell = require('gulp-shell');
var through = require('through2');
var gutil = require('gulp-util');
var jsdoc2md = require('jsdoc-to-markdown');
var mfs = require('more-fs');
var files = ['lib/**/*.js'];
var tests = ['test/**/*.js'];
@ -126,7 +129,32 @@ gulp.task('lint', function() {
gulp.task('plato', shell.task(['plato -d report -r -l .jshintrc -t bitcore lib']));
gulp.task('jsdoc', shell.task(['node_modules/.bin/jsdoc2md lib/address.js > docs/api/address.md']));
gulp.task('jsdoc', function() {
function jsdoc() {
return through.obj(function(file, enc, cb) {
if (file.isNull()){
cb(null, file);
return;
}
if (file.isStream()) {
cb(new gutil.PluginError('gulp-jsdoc2md', 'Streaming not supported'));
return;
}
var destination = 'docs/api/'+file.path.replace(file.base, '').replace(/\.js$/, '.md');
jsdoc2md.render(file.path, {})
.on('error', function(err) {
gutil.log(gutil.colors.red('jsdoc2md failed', err.message));
})
.pipe(mfs.writeStream(destination));
cb(null, file);
});
}
return gulp.src(files).pipe(jsdoc());
});
gulp.task('coverage', shell.task(['node_modules/.bin/./istanbul cover node_modules/.bin/_mocha -- --recursive']));

View File

@ -98,6 +98,7 @@
"gulp-jshint": "^1.9.0",
"gulp-mocha": "^2.0.0",
"gulp-shell": "^0.2.10",
"gulp-util": "^3.0.1",
"ink-docstrap": "git://github.com/bitpay/bitcore-jsdoctemplates.git",
"istanbul": "^0.3.5",
"jsdoc-to-markdown": "=0.5.9",
@ -105,8 +106,10 @@
"karma-firefox-launcher": "^0.1.3",
"karma-mocha": "^0.1.9",
"mocha": "~2.0.1",
"more-fs": "^0.5.0",
"run-sequence": "^1.0.2",
"sinon": "^1.12.2"
"sinon": "^1.12.2",
"through2": "^0.6.3"
},
"license": "MIT"
}