Miss any of our Open RFC calls?Watch the recordings here! »


0.1.15 • 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 with npm:

$ npm install base-cli-schema --save


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

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);
//=> {foo: 'bar'}

Related projects

You might also be interested in these projects:

  • base-cli-process: Normalizers for common argv commands handled by the base-cli plugin. Also pre-processes the given object… more | homepage
  • base-cli: Plugin for base-methods that maps built-in methods to CLI args (also supports methods from a… 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


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


Jon Schlinkert


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

This file was generated by verb, v0.9.0, on May 03, 2016.