ConfigMan
Dead simple, lightweight configuration utility.
Installation
npm i configman --save
Example
Given the following directory, at the root of your project :
config/
app.js
db.js
app.js
containing :
moduleexports = default: // This default name can be changed at instantiation name: 'My awesome app' port: 3000 dev: // Could be anything port: 8888
And db.js
containing :
moduleexports = default: name: 'myawesomedb' port: 3306 dev: user: 'johndoe' password: 'youwillneverfind'
We can easily retrieve the app's port
and name
for the dev
environment :
const ConfigMan = ; const Config = env: 'dev' ; Configname; // "My awesome app"Configport; // 8888
We can also request nested properties :
Config; // "johndoe"
API documentation
constructor
options
options
{Object
}options.env
{String
} : Environment's name, must match the one in the files- [
options.defaultConfigName
= 'default'] {String
} : The name of the property containing the configs default values - [
options.root
= 'config'] {String
} : The directory in which to retrieve the config files
.get() any
Config.get(...paths)
paths
{...String} : at least one path matching the file to read inroot
, optionally more to get nested properties
License
MIT