rejoice
hapi.js CLI.
Lead Maintainer - Lloyd Benson
Rejoice is a CLI tool for hapi which requires a js/json file with the config. It relies on the composer library called glue (http://github.com/hapijs/glue).
To start it up simply:
rejoice -c appjson // or using regular JS file// where app.js must export the config objectrejoice -c appjs
where app.json may look something like:
server: cache: 'redis' port: 8000 register: plugins: './awesome-plugin.js' plugin: options: uglify: true plugin: './ui-user' plugin: './ui-admin' options: sessiontime: 500 routes: prefix: '/admin' options: once: false
For more information about manifests, see Glue's API.
You can specify a specific path to be passed to Glue as the relativeTo
option by using the -p
flag.
rejoice -c appjson -p /full/path/to/project/plugin/dir
If you need a module required before your application is loaded you can use the -r
flag.
rejoice -c appjson -r `module`
Multiple modules can be required by using the -r
flag as many times as needed. This example requires two modules from an implied source of node_modules
.
rejoice -c app.json -r babel/register -r dotenv/config
When using -r
with the -p
flag, the -p
flag takes on an additional meaning. In this case, the -p
specifies the path where the module specified in -r
will be found.
rejoice -c appjson -r `module` -p /base/path/to/required/module
The resulting search path for module
would be /base/path/to/required/module/node_modules
.
To specify both a -p
option to be passed to Glue and specify a path to locate the -r
module use an absolute path for -r
.
rejoice -c appjson -p /lib -r /absolute/path/to/module