Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

harmonious

xtuple483MIT0.5.18

Ensure that node is run as the correct version, and uses --harmony, if needed

n, nvm, version, manager, package.json, engines, harmony, es6, require, module, cli, commander, ensure, default, process, node, version, manager

readme

harmonious

Ensure that your Node.js CLI apps are loaded with the correct Node version based on engines.node in package.json, and with --harmony if needed.

Usage

As simple as can be:

{
  "engines": {
    "node": "=0.11.13"
  }
}

File app.js:

#!/usr/bin/env node

var harmony = require('./harmonious');
harmony('./lib/cli');

harmonious will ensure that regardless of how you invoke your app, harmony extensions will be loaded. These will all work:

$ ./app
$ node app
$ node --harmony app
$ n use 0.11.13 app

Say you have a global bin you want to use:

{
  "bin": {
    "myapp": "app.js"
  }
}

You don't have to worry about trying to shove --harmony somewhere:

$ sudo myapp
$ sudo node myapp