dotenv-plus-options
This module loads environment variables from a .env file, if there is one .env file at CWD, (with dotenv package)
and any options given to the constructor, mixing it all into config.options
Constructor options
always takes preference over options from .env
file.
Install
$> npm i dotenv-plus-options
Prerequisites
- NodeJs
>=v6.17.1 (npm v3.10.10)
Usage
Instantiate Config module
const Config = ;let config; config = ;config = options;config = options dotenv_options;config = null dotenv_options; console;
Example Extends Config Class
/** .env file on CWD: DB_USER=John ALLOWED=["foo", "bar"] OBJ={"id": 1, "op": ["one","two"]} */ const Config = ; { superopt } const app = db_user: 'root' baz: 2; console; /** { db_user: 'root', //constructor options always takes preference allowed: [ 'foo', 'bar' ], obj: { id: 1, op: [ 'one', 'two' ] }, baz: 2 } */
dotenv options
Errors
Only one error is thrown, named AdsegConfigError
when you force dotenv custom .env path and dotenv cannot parse it.
const Config = ; config = options path: 'nonExistingEnvFile'; //or config = null path: 'nonExistingEnvFile'; //throws AdsegConfigError
Tests
> npm run test
Dependencies
Contributing
Pull requests are welcome.