Add support for registering a glob of generators to your base app.
Install with npm:
$ npm install --save base-register
var generators = require('base-generators');
var register = require('base-register');
var Base = require('base');
var base = new Base();
base.use(generators());
base.use(register());
Params
patterns {Array|String}: End glob patterns with a slash to register a generator in a directory.options {Object}returns {Object}: Returns the instance for chainingExample
app.register('generators/*');
Let's say you have a generator with three sub-generators in directories:
my-generator
L generators/sub-generator-a
L generators/sub-generator-b
L generators/sub-generator-c
Before
Typically, with base-generators you would register the sub-generators in your generator like this:
module.exports = function(app) {
app.register('a', require('./generators/sub-generator-a'));
app.register('b', require('./generators/sub-generator-b'));
app.register('c', require('./generators/sub-generator-c'));
};
After
With this plugin, you can do this:
module.exports = function(app) {
app.register('generators/*/');
};
Pass options as the second argument. Anything that is supported by matched may be used.
Example
module.exports = function(app) {
app.register('*/', {matchBase: '*.js', cwd: 'generators'});
};
Pass a custom rename function as the last argument.
Params
The function exposes the following parameters:
filepath The fully resolved, absolute path to the generatorbasename The basename of the absolute directory path. So the basename of foo/bar/baz/index.js would be bazExample
Given the same generators from the first examples:
app.register('generators/*/index.js', function(name, filepath) {
return 'foo-' + name;
});
// registers `foo-a`, `foo-b`, and `foo-c`
You might also be interested in these projects:
base application. | homepageThis document was generated by verb-readme-generator (a verb generator), please don't edit directly. Any changes to the readme must be made in .verb.md. See Building Docs.
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue. Or visit the verb-readme-generator project to submit bug reports or pull requests for the readme layout template.
Generate readme and API documentation with verb:
$ npm install -g verb verb-readme-generator && verb
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, v0.9.0, on June 15, 2016.