confugu
Simple config loading with support for injecting environment variables.
Installation
npm i confugu
Usage
First, set up a yaml
file to hold your config values.
logLevel: debug
port: ${ HTTP_PORT }
Next, just pass the path to your config file to the asynchronous load
function.
const confugu = require('confugu')
;(async () => {
const config = await confugu.load('path/to/your/config')
console.log(config.logLevel)
console.log(config.port)
})()
Or you can load your config synchronously using loadSync
:
const confugu = require('confugu')
const config = confugu.loadSync('path/to/your/config')
console.log(config.logLevel)
console.log(config.port)
Safely fetching nested properties
Fetching a nested property safely without having to check existence all the way
down the property chain is also supported using the get
function:
const confugu = require('confugu')
const config = confugu.loadSync('path/to/your/config')
console.log(config.get('logLevel'))
console.log(config.get('db.password'))
console.log(config.get('invalid.nested.property'))
Running tests
npm test