A library for easily creating observable CLI tasks with support for commands, arguments, and options.
Go to file
2015-11-09 22:58:05 +01:00
.idea added initial structure 2015-10-04 23:21:10 +02:00
ts small interface fix 2015-11-09 22:58:05 +01:00
.gitignore added travis + tests 2015-10-05 23:33:57 +02:00
.travis.yml improve travis process 2015-11-09 04:07:01 +01:00
index.js add tests and fix some errors 2015-11-09 04:02:46 +01:00
LICENSE Initial commit 2015-10-04 23:06:36 +02:00
package.json 0.0.11 2015-11-09 04:07:36 +01:00
README.md add tests and fix some errors 2015-11-09 04:02:46 +01:00
test.js add tests and fix some errors 2015-11-09 04:02:46 +01:00

smartcli

nodejs wrapper for CLI related tasks
Dev Status

Buildstatus/Dependencies

Build Status devDependency Status

Install the package

npm install smartcli

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');

Cheers Phil from Lossless Digital