1.1.7 • Published 9 years ago

convar v1.1.7

Weekly downloads
9
License
MIT
Repository
github
Last release
9 years ago

CONVAR

Get configuration variable via config file, environment variable, package, npm or cli with optional required error handling

Install

npm install convar --save

Use

var convar = require('convar')
  , token  = convar('token') // e27d9f2a29b7

Required values pass in error message or Error

var convar = require('convar')
  , token  = convar('token', 'Missing access token') // e27d9f2a29b7
  , url    = convar('url',   new Error('Missing URL'))

Value via command line

node app.js --token e27d9f2a29b7 --node_env dev

Conditional flags

node app.js --debug

app.js :

var convar = require('convar')
  , debug  = convar('debug') // true

Value via environment variable

token=e27d9f2a29b7
node_dev=dev

node app.js

Ignore case

This will also work

TOKEN=e27d9f2a29b7
NODE_ENV=dev

Value via JSON config

config='{ "token":"e27d9f2a29b7", "NODE_ENV":"dev" }'

Value via JSONIC simplified JSON

config=token:e27d9f2a29b7,NODE_ENV:dev

JSON or JSONIC variables

node app.js --config token:e27d9f2a29b7,NODE_ENV:dev --firebase url:https://example.firebaseio.com,token:e27d9f2a29b7e27d9f2a29b7
var convar = require('convar')
  , token  = convar('token')        // e27d9f2a29b7
  , fbUrl  = convar('firebase').url // example.firebaseio.com

JSON config file

config.json file:

{
  "token": "e27d9f2a29b7",
  "NODE_ENV": "dev",
  "firebase": {
    "url":   "https://example.firebaseio.com",
    "token": "e27d9f2a29b7e27d9f2a29b7"
  }
}

config parameter is a file if it isn't JSON or JSONIC and a string that contains .json

node app.js --config config.json

Prefixed values

Example with yo_ prefix

node app.js --yo_token e27d9f2a29b7

Use

var convar = require('convar')
convar.prefix('yo_')
var token  = convar('token')        // e27d9f2a29b7

Package values

var convar = require('convar')
console.log(convar.package.version) // 1.0.0

License: MIT