Configuration Management


This is the application configuration helper module you've always dreamed of. It's goal is to be declaritive and environmental which makes for easier development and testing.

Basic Example

var Config = require('config')
var sampleConfig = new Config('path/to/configs/')
// will open path/to/configs/development.json 

You can also specify a different environment

var sampleConfig = new Config('path/to/configs/', 'demo')
// will now open path/to/configs/demo.json 

Strict mode

var sampleConfig = new Config('path/to/configs/', undefined, true)
// throws configuration setting missing error! 

One of the main reasons I wrote Config is because default configuration settings are annoying! The code that requires configuration should know ahead of time what to do. With Config you can declare what the default should be, and it will fall back to it if your config.json doesn't say otherwise.

var foo = sampleConfig.get('non.existent.setting', 'I am a default')
// 'I am a default'