1.5.0 • Published 7 years ago

envstrict v1.5.0

Weekly downloads
4
License
ISC
Repository
github
Last release
7 years ago

envstrict

schema like definitions for environment variables, throws an exception when missing required variables. Has a few helper methods exposed for filtering, merging an objects keys, and a few other things.

Usage

const envstrict = require('envstrict');
const envs = envstrict([{
  key: 'NODE_ENV',
  required: false,
  default: 'development',
  transformer: (val) => val.toUpperCase(),
  rename: 'environment',
  mutate: true
}, {
  key: 'PORT',
  required: true
}, {
  key: 'FILE_PATHS',
  delim: /,\s?/,
  default: '~/app/dir1,~/app/dir2,~/app/dir3'
}]);

API

.add, .and, .get - Aliased method to add after initial object creation.

  const envstrict = require('envstrict');
  const envs = envstrict([ /* objects go here */ ]);
  envs.add({ key: 'SOME_ENV_VAR' });

Tests

$ npm test

> envstrict@1.2.5 test /home/higgamuffin/code/envstrict
> mocha test/ -R spec

  Tests for EnvStrict
    ✓ should have transformed the key for `NODE_ENV` to `environment`
    ✓ should be able to transform `environment` value to `DEVELOPMENT`
    ✓ should be able to delimit `FILE_PATHS` to an array
    ✓ throws an error when a required key is not found
    ✓ should accept an object instead of an array
    ✓ should be able to add variables after initial object creation
    ✓ throws an error if passed an undefined
    ✓ should be able to handle undefined keys when mutate is `true`
    ✓ should be able to transform a `String` as an object key
    ✓ should be able to transform a `Number` as an object key
    ✓ should be able to transform a `Boolean` as an object key

  11 passing (23ms)
1.5.0

7 years ago

1.3.1

8 years ago

1.3.0

8 years ago

1.2.5

8 years ago

1.2.4

8 years ago

1.2.3

8 years ago

1.2.2

8 years ago

1.1.2

8 years ago

1.1.1

8 years ago

1.1.0

8 years ago

1.0.1

8 years ago

1.0.0

8 years ago