0.4.1 • Published 6 years ago

confugu v0.4.1

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

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 } # use 'HTTP_PORT' environment variable

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) // prints 'debug'
  console.log(config.port) // prints whatever is the value of process.env.HTTP_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) // prints 'debug'
console.log(config.port) // prints whatever is the value of process.env.HTTP_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')) // prints the value of the 'logLevel' property
console.log(config.get('db.password')) // prints the value of the 'db.password' property
console.log(config.get('invalid.nested.property')) // Invalid properties are "undefined"

Running tests

npm test
0.4.1

6 years ago

0.4.0

6 years ago

0.3.0

7 years ago

0.2.0

7 years ago

0.1.0

7 years ago

0.0.1

7 years ago