Verb plugin for generating files trees for documentation.
(TOC generated by verb using markdown-toc)
Example projects that use this plugins:
Install with npm:
$ npm install --save verb-trees
trees(fn[, options]);
fn
{Function}: generator function (Generate, not es6)options
{Object|Array}: Options object or array of task names.
Register as a plugin, where app
is an instance of generate, assemble, verb, or update:
app.use(trees(fn[, options]));
This creates a sub-generator named treeGenerator
, along with a few tasks on the sub-generator for controlling flow. The sub-generator tasks probably don't need to be accessed directly though.
A trees
task is added to app
for running the sub-generator, which builds the trees for the specified tasks.
Example
app.use(trees(fn, ['foo', 'bar', 'baz']));
app.build('trees', function(err) {
if (err) console.log(err);
});
Generated "dest" trees look something like this:
.
├─┬ test
│ ├─┬ fixtures
│ │ ├── content.tmpl
│ │ ├── default.tmpl
│ │ └── nothing.tmpl
│ └── test.js
├── .editorconfig
├── .gitignore
├── LICENSE
├── package.json
├── README.md
└── index.js
Diffs
When one of the tasks is named default
, diffs are generated automatically, and each diff is based on a comparison to the default.
.
-├─┬ test
-│ ├─┬ fixtures
-│ │ ├── content.tmpl
-│ │ ├── default.tmpl
-│ │ └── nothing.tmpl
-│ └── test.js
-├── .editorconfig
-├── .gitignore
-├── LICENSE
-├── package.json
-├── README.md
└── index.js
var project = require('generate-project');
var trees = require('verb-trees');
module.exports = function(app) {
// generate trees for the `default`, `minimal` and `gulp` tasks
app.use(trees(project, ['default', 'minimal', 'gulp']));
};
var path = require('path');
var trees = require('verb-trees');
var genFn = require('generate-project');
var del = require('delete');
module.exports = function(app) {
// register verb-generate-readme as a plugin
app.use(require('verb-generate-readme'));
// specify the tasks to run and generate trees for, from `generate-project`
app.use(trees(genFn, ['default', 'index', 'test']));
// delete temp files after the build is finished
app.task('delete', function(cb) {
del('.temp-trees', cb);
});
// run the `trees` task first, so the `readme` generator
// can use the trees as includes
app.task('default', ['trees', 'readme', 'delete']);
};
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Install dev dependencies:
$ npm install -d && npm test
Jon Schlinkert
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb-generate-readme, v0.1.28, on July 31, 2016.