Orchestrate multiple instances of base at once.
npm install base-runner> Orchestrate multiple instances of base at once.
Install with npm:
``sh`
$ npm install --save base-runner
`js
var runner = require('base-runner');
var Base = require('base');
runner(Base, options, argv, function(err, app, runnerContext) {
// err: error object, if an error occurredapp
// : instance of base runnerContext
// : object with argv, env and options properties`
});
Params
* Base - (required) base constructoroptions
* - (required) configuration optionsargv
* - (required) parsed process.argv object from minimist or whatever argv parser you prefer.
`js
var runner = require('base-runner');
var Base = require('base');
var config = {
name: 'awesome',
cwd: process.cwd(),
runner: require('./package.json'),
processTitle: 'awesome',
moduleName: 'awesome',
extensions: {
'.js': null
}
};
runner(Base, options, argv, function(err, app, runnerContext) {
// err: error object, if an error occurredapp
// : instance of base runnerContext
// : object with argv, env and options properties`
});
Create a runner with the given constructor, liftoff config object, argv object and callback function.
Params
* Ctor {Function}: Constructor to use, must inherit base.config
* {Object}: The config object to pass to liftoff.argv
* {Object}: Argv object, optionally pre-parsed.cb
* {Function}: Callback function, which exposes err, app (base application instance) and runnerContextreturns
* {Object}
Example
`js
var Base = require('base');
var argv = require('minimist')(process.argv.slice(2));
var config = {
name: 'foo',
cwd: process.cwd(),
extensions: {'.js': null}
};
runner(Base, config, argv, function(err, app, runnerContext) {
if (err) throw err;
// do stuff with app and runnerContext`
process.exit();
});
The following constructor events are emitted:
Exposes runnerContext as the only paramter.
`js`
Base.on('preInit', function(runnerContext) {
});
Exposes runnerContext and app (the application instance) as paramters.
`js`
Base.on('init', function(runnerContext, app) {
});
Exposes runnerContext and app (the application instance) as paramters.
`js`
Base.on('postInit', function(runnerContext, app) {
});
Exposes runnerContext and app (the application instance) as paramters.
`js`
Base.on('finished', function(runnerContext, app) {
});
* base-generators: Adds project-generator support to your base application. | baseoption application."" class="text-primary hover:underline" target="_blank" rel="noopener noreferrer">homepage
* base-option: Adds a few options methods to base, like , enable and disable. See the readme… more | option, enable and disable. See the readme for the full API."" class="text-primary hover:underline" target="_blank" rel="noopener noreferrer">homepage
* base-plugins: Adds 'smart plugin' support to your base application. | homepage
* base-store: Plugin for getting and persisting config values with your base-methods application. Adds a 'store' object… more | homepage
* base-task: base plugin that provides a very thin wrapper around https://github.com/doowb/composer for adding task methods to… more | for adding task methods to your application."" class="text-primary hover:underline" target="_blank" rel="noopener noreferrer">homepage
* base: Framework for rapidly creating high quality node.js applications, using plugins like building blocks | homepage
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
| Commits | Contributor |
| --- | --- |
| 239 | jonschlinkert |
| 2 | doowb |
| 1 | tunnckoCore |
_(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)_
To generate the readme, run the following command:
`sh`
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
`sh``
$ npm install && npm test
Jon Schlinkert
* github/jonschlinkert
* twitter/jonschlinkert
Copyright © 2017, Jon Schlinkert.
Released under the MIT License.
*
_This file was generated by verb-generate-readme, v0.6.0, on July 18, 2017._