Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

base-cli-schema

0.1.5 • Public • Published

base-cli-schema NPM version NPM downloads Build Status

Schema for the base-cli plugin, used for normalizing argv values before passing them to cli.process().

Install

Install with npm:

$ npm install base-cli-schema --save

Usage

var argv = require('minimist')(process.argv.slice(2));
var Base = require('base');
var cliSchema = require('base-cli-schema');
 
var app = new Base();
app.use(cli());
var schema = cliSchema(app);
 
var obj = schema.normalize(argv);
console.log(obj);

Custom fields

Field names correspond to properties on the parsed argv object.

var schema = cliSchema(app)
  .field('foo', 'string', {
    normalize: function(val, key, config, schema) {
      // do stuff to val
      return 'bar';
    }
  })
 
var obj = schema.normalize(argv);
console.log(obj);
//=> {foo: 'bar'}

Related projects

You might also be interested in these projects:

  • base-cli: Plugin for base-methods that maps built-in methods to CLI args (also supports methods from a… more | homepage
  • base-cli-process: Commonly used config mappings for the base-cli plugin. Also pre-processes the given object with base-cli-schema… more | homepage
  • base-option: Adds a few options methods to base, like option, enable and disable. See the readme… more | homepage
  • base: base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… more | homepage

Contributing

Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

Building docs

Generate readme and API documentation with verb:

$ npm install verb && npm run docs

Or, if verb is installed globally:

$ verb

Running tests

Install dev dependencies:

$ npm install -d && npm test

Author

Jon Schlinkert

License

Copyright © 2016, Jon Schlinkert. Released under the MIT license.


This file was generated by verb, v0.9.0, on April 13, 2016.

Install

npm i [email protected]

Version

0.1.5

License

MIT

Last publish

Collaborators

  • avatar