The process core module of Node provides the env property which hosts all the environment variables that were set at the moment the process was started.

Here is an example that accesses the NODE_ENV environment variable, which is set to development by default.

Note: process does not require a “require”, it’s automatically available.

process.env.NODE_ENV // "development"

Setting it to “production” before the script runs will tell Node that this is a production environment.

In the same way you can access any custom environment variable you set.

Here we set 2 variables for API_KEY and API_SECRET

API_KEY=123123 API_SECRET=456456 node app.js

We can get them in Node.js by running

process.env.API_KEY // "123123"
process.env.API_SECRET // "456456"

You can write the environment variables in a .env file, then

npm install dotenv

and at the beginning of your main Node file, add

require('dotenv').config()

In this way you can avoid listing the environment variables in the command line before the node command, and those variables will be picked up automatically.

Download my free Node.js Handbook, and check out my premium Node.js Course


Coming soon:
Click to find out more โคด๏ธ