config-importer
v1.0.3
Published
Import your configuration files from one folder. Any config will change or add variables to a default configuration.
Downloads
7
Readme
I've made this module in order to allow developers to create applications with the different work stages, such as production, testing, development, etc.
This module allows you to have a default configuration file and change its specific values according to your NODE_ENV
variable.
How to use
To use this module with the default values, you just need to get the configuration like this:
const config = require('config-importer')()
If you want to change the options, you need to add options as an argument:
const options = {
path: "configPath"
}
const config = require('config-importer')(options)
Options
You can leave the options empty. The default values are:
{
"path": "config",
"default": "default",
"debug": false
}
path
: represents the directory where your configuration files are stored in relation to your project root directory.default
: represents the default configuration file name, without the.json
extension.debug
: makes this module output debug log (i.e. config directory, thrown exceptions).
Example
In this scenario, you have your default configuration in config/default.json
and you are running your application with NODE_ENV=dev npm start
.
This module overwrites the values from default.json
with the ones set on dev.json
, as shown:
default.json
{
"title": "Application title",
"mongodb": {
"uri": "https://productionhost:9999/db",
"username": "username",
"password": "password"
}
}
dev.json
{
"mongodb": {
"uri": "https://devhost:9999/db",
"extra": "param"
}
}
Then, the configuration on your application should be:
{
"title": "Application title",
"mongodb": {
"uri": "https://devhost:9999/db",
"username": "username",
"password": "password",
"extra": "param"
}
}