Neutered Puppy Masquerade

    base-config

    0.5.2 • Public • Published

    base-config NPM version NPM downloads Build Status

    base-methods plugin that adds a config method for mapping declarative configuration values to other 'base' methods or custom functions.

    Install

    Install with npm:

    $ npm install base-config --save

    Usage

    var config = require('base-config');
    var base = require('base');
    var app = base();
     
    // register the plugin
    app.use(config());

    Mapped methods

    The following methods are mapped by default, but any of them can be overridden using app.config.map():

    • .cwd
    • .data
    • .define
    • .del
    • .disable
    • .disabled
    • .enable
    • .enabled
    • .get
    • .has
    • .option
    • .set
    • .store
    • .use

    Map custom methods

    Map properties on a configuration object to methods on app.

    Each key on the given object should match the name of a method on app.

    // call `config` as a function
    app.config({
      set: function(val) {
        app.set(val);
      }
    });
    // or use the `map` method
    app.config
      .map('set')
      .map('get')
      .map('has');

    Process

    Iterate over each property on the given object or array of objects, and call the mapped method that matches property key.

    //=> calls `app.set('foo', 'bar');
    app.config.process({set: {foo: 'bar'}}, function(err) {
      if (err) throw err;
    });

    API

    create

    Create a function for mapping app properties onto the given prop namespace.

    Params

    • prop {String}: The namespace to use
    • argv {Object}
    • returns {Object}

    Related projects

    You might also be interested in these projects:

    • base: base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… more | homepage
    • base-cli: Plugin for base-methods that maps built-in methods to CLI args (also supports methods from a… more | homepage
    • base-data: adds a data method to base-methods. | homepage
    • base-options: Adds a few options methods to base-methods, like option, enable and disable. See the readme… more | homepage
    • base-plugins: Upgrade's plugin support in base applications to allow plugins to be called any time after… more | homepage
    • base-store: Plugin for getting and persisting config values with your base-methods application. Adds a 'store' object… 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, v, on March 25, 2016.

    Install

    npm i base-config

    DownloadsWeekly Downloads

    22,623

    Version

    0.5.2

    License

    MIT

    Last publish

    Collaborators

    • jonschlinkert