smartcli/README.md

58 lines
1.6 KiB
Markdown
Raw Normal View History

2015-10-04 21:21:10 +00:00
# smartcli
2015-10-14 19:01:39 +00:00
nodejs wrapper for CLI related tasks
[![Dev Status](https://img.shields.io/badge/DevStatus-Active-green.svg)](https://github.com/pushrocks/smartcli/commits/dev)
2015-10-04 21:21:10 +00:00
2015-11-09 03:02:46 +00:00
## Buildstatus/Dependencies
2015-10-04 21:21:10 +00:00
[![Build Status](https://travis-ci.org/pushrocks/smartcli.svg?branch=master)](https://travis-ci.org/pushrocks/smartcli)
[![devDependency Status](https://david-dm.org/pushrocks/smartcli/dev-status.svg)](https://david-dm.org/pushrocks/smartcli#info=devDependencies)
2015-11-09 03:02:46 +00:00
## Install the package
2015-10-14 19:14:20 +00:00
npm install smartcli
2015-11-09 03:02:46 +00:00
## Usage
2015-11-05 20:43:34 +00:00
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)
2015-11-09 03:02:46 +00:00
### 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
2015-10-14 19:09:26 +00:00
```js
2015-10-14 19:14:20 +00:00
var smartcli = require("smartcli");
2015-10-04 21:21:10 +00:00
2015-11-09 03:02:46 +00:00
/* -------------- Check Functions -------------------*/
2015-10-14 19:14:20 +00:00
//returns true for terminal command "node myjs.js jazz"
2015-11-09 03:02:46 +00:00
smartcli.check.command('jazz');
2015-10-14 19:09:26 +00:00
2015-10-14 19:14:20 +00:00
/**
2015-10-14 19:16:12 +00:00
* returns an object for terminal command "node myjs.js --myoption something" like so
2015-10-14 19:14:20 +00:00
* {
* name: 'myoption',
* specified: true,
* value: 'something'
* }
*/
2015-11-09 03:02:46 +00:00
smartcli.get.option('myoption');
2015-10-14 19:16:42 +00:00
```
2015-10-14 19:09:26 +00:00
Cheers
2015-10-04 21:21:10 +00:00
Phil from Lossless Digital