1.2.0 • Published 6 years ago

node-json-config-loader v1.2.0

Weekly downloads
4
License
MIT
Repository
github
Last release
6 years ago

Json Configuration Loader - IoT Shaman

npm badge Build Status Coverage Status

Load multiple configurations files with one easy API. Have application secrets stored in environmental variables or any other key store? No problem, simply pass in a mapping and the key store and it will resolve this just like a regular json configuration file.

Requirements

In order to use node-json-config-loader you will need the following resource(s):

  • npm

Installation

npm install node-json-config-loader --save

Quick Start

The entry point into the application is a factory method that will generate the config loader. Simply pass in a configuration object containing your files list / secret mappings + key stores (with names for later retrieval) and the factory will return a promise. When the promise resolves, you can access the config objects by calling 'get' on the return value.

var path = require('path');
var config = {
    files: [{
        name: "myDefaultConfig",
        path: path.join(__dirname, 'config.json')
    }],
    secret_maps: [{
        name: "mySecretConfig",
        path: path.join(__dirname, 'secrets.map.json'),
        store: process.env
    }]
}
var loader = require('node-json-config-loader');
loader(config).then(function(rslt) {
    // ...
});

API Reference

The factory method (read above section 'Quick Start') will return a config object with the following interface:

interface ConfigApi {
    get(key: string): any;
}

Secret Maps

Secret maps are simple json objects that have the required keys as properties in the object, and the values should be boolean. For example:

{
    "some_key": true,
    "some_other_key": true
}
1.2.0

6 years ago

1.1.2

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago

0.0.9

6 years ago

0.0.8

6 years ago