2.0.0 • Published 6 years ago

bi-config v2.0.0

Weekly downloads
6
License
GPL-3.0
Repository
-
Last release
6 years ago

Configuration plugin for bi-service
Loads a config file from a fs path which defaults to /config/NODE_ENV/config.json5.
NODE_ENV defaults to development string value.
Config values can be either in valid JSON or in more lighweight JSON5 format.

Example use:

    const config = require('bi-config');
    config.initialize();
    //...stuff
    var listenPort = config.get("path:to:nested:option");

JSON pointer

Supports pointers only within a file (does not support referencing other files from within a file)

Example use:

{
    public: {
        storage: {
            couchbase: {$ref: '#/storage/couchbase'}
        }
    },
    storage: {
        couchbase: {
            host: '127.0.0.1'
        }
    }
}

will be resolved to

{
    public: {
        storage: {
            couchbase: {
                host: '127.0.0.1'
            }
        }
    },
    storage: {
        couchbase: {
            host: '127.0.0.1'
        }
    }
}

$join keyword

Joins all items of an array into one value. JSON pointer are resolved before concatenation

Example use:

{
    host: 'localhost',
    listen: 3000,
    url: {$join: [
        'http://',
        {$ref: '#/host'},
        ':'
        {$ref: '#/listen'},
    ]}
}