To retrieve environment variables in Node.JS you can use process.env.VARIABLE_NAME, but don't forget that assigning a property on process.env will implicitly convert the value to a string.
Avoid Boolean Logic
Even if your .env file defines a variable like SHOULD_SEND=false or SHOULD_SEND=0, the values will be converted to strings (“false” and “0” respectively) and not interpreted as booleans.
if (process.env.SHOULD_SEND) {
mailer.send();
} else {
console.log("this won't be reached with values like false and 0");
}
Instead, you should make explicit checks. I’ve found depending on the environment name goes a long way.
If you want to use a string key generated in your Node.js program, say,
var v = 'HOME'
, you can useprocess.env[v]
.Otherwise,
process.env.VARNAME
has to be hardcoded in your program.Where
ENV_VARIABLE
is the name of the variable you wish to access.See Node.js docs for
process.env
.You can use env package to manage your environment variables per project:
.env
file under the project directory and put all of your variables there.require('dotenv').config();
Done. Now you can access your environment variables with
process.env.ENV_NAME
.To retrieve environment variables in Node.JS you can use process.env.VARIABLE_NAME, but don't forget that assigning a property on process.env will implicitly convert the value to a string.
Avoid Boolean Logic
Instead, you should make explicit checks. I’ve found depending on the environment name goes a long way.
When using Node.js, you can retrieve environment variables by key from the
process.env
object:for example
Here is the answer that will explain setting environment variables in node.js