runninator v0.1.0
Runninator
A generic runner ideal for a front-end hot reload server and application server.
Runninator is designed for running things like your application server along with a webpack development server, or similar. This is not designed for running build tasks but rather a way to start multiple servers required for development together while providing the ability to control them individually.
Install
npm install --save-dev runninator
Usage
runninator <config file>
Once launched runninator will start each of the commands listed in the configuration file and provide a prompt for controlling them. Allowing individual commands to be restarted, stopped, and started again.
Configuring
Runninator expects a JavaScript file that exports a configuration object.
Example
module.exports = {
app: {command: ["node", "app.js"],
color: "green"},
wp: {command: ["npm", "run", "webpack"],
color: "blue"}
};
Each entry maps the name runninator will use to the actual command to be run. The color field id optional and one will be picked automatically if omitted or invalid. Valid colors are:
green
blue
cyan
magenta
yellow
Red is reserved for displaying errors.
Limitations
- Not tested on Windows, but in theory it should work.
- With node.js 4 commands cannot always be stopped, for example any command started using an npm script. This is due to a documented bug that was fixed in later versions. https://github.com/nodejs/node/issues/2098
- Not tested with node.js versions prior to 4.
Example Run
License
© John Lamp
MIT license
8 years ago