Verb plugin for generating files trees for documentation.
npm install verb-treesVerb plugin for generating files trees for documentation.
- Real examples
- Install
- Usage
* Plugin usage
+ Sub-generator
+ "tree" trask
- Trees
- Examples
* Basic example
* Full example
- About
* Related projects
* Contributing
* Running tests
* Author
* License
_(TOC generated by verb using markdown-toc)_
Example projects that use this plugins:
* generate-project
* generate-engine
Install with npm:
``sh`
$ npm install --save verb-trees
`js`
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:
`js`
app.use(trees(fn[, options]));
#### Sub-generator
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.
#### "tree" trask
A trees task is added to app for running the sub-generator, which builds the trees for the specified tasks.
Example
`js`
app.use(trees(fn, ['foo', 'bar', 'baz']));
app.build('trees', function(err) {
if (err) console.log(err);
});
Generated "dest" trees look something like this:
`diff`
.
├─┬ 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.
`diff`
.
-├─┬ test
-│ ├─┬ fixtures
-│ │ ├── content.tmpl
-│ │ ├── default.tmpl
-│ │ └── nothing.tmpl
-│ └── test.js
-├── .editorconfig
-├── .gitignore
-├── LICENSE
-├── package.json
-├── README.md
└── index.js
`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']));
};
`js
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-projecttrees
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 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:
`sh``
$ npm install -d && npm test
Jon Schlinkert
* github/jonschlinkert
* twitter/jonschlinkert
Copyright © 2016, Jon Schlinkert.
Released under the MIT license.
*
_This file was generated by verb-generate-readme, v0.1.28, on July 31, 2016._