@ringofstorms/dotenv-multi
v0.2.0
Published
Dot environment file loader that acts like Create React App's supporting many files with per NODE_ENV/local settings.
Downloads
3
Maintainers
Readme
dotenv-multi
Dotenv-multi is a module that uses dotenv and dotenv-expand to load files similarly to Create React App script's. It allows the use of NODE_ENV and local specific env files.
This is useful because now you can commit your default env files into the repo and still have a sane way to override them locally without having changes in your local git on one .env file.
Example root files:
.env
.env.development
.env.development.local (not pushed to git)
Install
# with npm
npm install @ringofstorms/dotenv-multi dotenv dotenv-expand yn
Usage
# js
const dotenvMulti = require('@ringofstorms/dotenv-multi');
dotenvMulti.config();
# typescript
import { config } from '@ringofstorms/multi-env';
config();
Boolean support
This package also uses the yn package to convert environment variables into javascript strings that will resolve as true false. (It replaces values like 0
, no
, false
, etc into an empty string ""
)
config({
convertToBooleanPredicate: variable => variable.includes("BOOL"),
/* and or */ convertToBoolean: ["BOOL_VARIABLE_TO_CONVERT"]
});
Debug
You can enable debug logs which will also enable debug mode on dotenv
calls to see what is going on when a variable does not resolve how you expect.
config({
debug: true,
});
Configuring .gitignore
You should add the following to your .gitignore
file:
# .env local files
.env.development.local
.env.local
.env.production.local
.env.test.local
Contributing
building
npm run build
publishing
if not already done npm login
npm publish --access public