Awesome
base-config
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 useargv
{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
anddisable
. 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.