minimal-cli

0.1.0 • Public • Published

minimal-cli

npm package

NPM version Build status Coverage Vulnerabilities

A simple package for creating minimal command-line programs.

Installation

$ npm install minimal-cli --save

Usage

Here is an example CLI tool that makes HTTP requests:

#!/usr/bin/env node
 
const minimalCli = require('minimal-cli');
const cli = minimalCli({
  flags: [
    ['-u, --url <url>', 'string', 'Specify a URL for the HTTP request'],
    ['-v, --verbose', 'boolean', 'Show additional information']
  ]
});
 
// The `cli` object will contain the commands and flags upon script invocation
console.log(cli);

Invoke the script from the command-line:

$ ./custom-script.js get --url https://example.com --verbose

Access the commands and flags in the cli object logged above.

{
  "commands": ["get"],
  "flags": {
    "url": "https://example.com",
    "verbose": true,
    "u": "https://example.com", // handles the aliasing
    "v": true                   // handles the aliasing
  }
}

Automatic help text is also generated based on the options object that is passed to minimalCli:

$ ./custom-script.js --help

Output:

Usage: cli [command]

Options:
  -V, --version    Show version number                       [boolean]
  -u, --url <url>  Specify a URL for the HTTP request        [string]
  -v, --verbose    Show additional information               [boolean]
  -h, --help       Show help text                            [boolean]

License

MIT License

Copyright (c) 2019 Josh Crozier

Package Sidebar

Install

npm i minimal-cli

Weekly Downloads

2

Version

0.1.0

License

MIT

Unpacked Size

8.89 kB

Total Files

6

Last publish

Collaborators

  • joshcrozier