A library for easily creating observable CLI tasks with support for commands, arguments, and options.
dist | ||
test | ||
ts | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
package.json | ||
README.md |
smartcli
nodejs wrapper for CLI related tasks
Status
Install the package
npm install smartcli --save
Usage
this plugin tries to establish some logic in which CLI tools work.
take the following commandline input:
mytool function argument1 argument2 --option1 option1Value --option2 option2Value
- 'mytool' obviously is the tool (like git)
- function is the main thing the tool shall do (like commit)
- option is an option you can add (like -m for message)
- optionValue is the referenced option value (like a commit message)
The inner organization of smartcli
smartcli exposes three major groups of functions:
- check functions
- are grouped in smartcli.checks object
- get functions
- are grouped in smartcli.get object
- async interaction functions
- are grouped in smartcli.interaction object
var smartcli = require("smartcli");
/* -------------- Check Functions -------------------*/
//returns true for terminal command "node myjs.js jazz"
smartcli.check.command('jazz');
/**
* returns an object for terminal command "node myjs.js --myoption something" like so
* {
* name: 'myoption',
* specified: true,
* value: 'something'
* }
*/
smartcli.get.option('myoption');