a usefull toolset for node commandline applications
$ npm install --save n-cli
#!/usr/bin/env node
"use strict";
var Cli = new require("n-cli");
var cli = new Cli({
silent: false,
handleUncaughtException : true, // beautifies error output to console
handledRejectionPromiseError : true, // beautifyies error output to console
runcom : ".myapprc"
});
cli.on("unicorn", function(){
this.argv.notNull("rainbow");
this.log(this);
});
cli.runcom(function(rc){
this.log(rc);
});
$ your-client-app unicorn --rainbow forever;
# yields :
{
prettyError:
PrettyError { },
init:
{ appname: 'node-cli-example-app-1',
handleUncaughtException: true },
argv: { _: [ 'unicorn' ], rainbow: 'e', notNull: [Function: bound ] },
config:
{ settings: {},
appFolder: 'c:\\git\\n-cli\\examples',
appPackageFilename: 'c:\\git\\n-cli\\examples\\package.json',
appPackage: {},
appName: 'node-cli-example-app-1',
dataFolder: 'C:\\Users\\User\\AppData\\Roaming\\node-cli-example-app-1',
filename: 'C:\\Users\\User\\AppData\\Roaming\\node-cli-example-app-1\\config.json' },
color:
Chalk { },
Error: [Function: NodeCliError],
minimist: [Function]
}
$ your-client-app unicorn --rainbow ;
# yields : missing-parameter-value missing value for parameter rainbow.
ncli adds automatically some methods to your commandline application.
# output your version number
$ your-client-app -v;
Output COMMANDLINE-ARGUMENTS.md in your projects root folder
$ your-client-app help;
https://www.youtube.com/watch?v=m53SlSaP6cs
MIT © s-a