express-env

1.0.4 • Public • Published

Express-Env

Safely expose your environment variables to dynamically fetch them in the frontend.

import expressEnv from 'express-env'

app.use('/env', expressEnv())
<!DOCTYPE html>
<html>
<head>
  <script src="./env"></script>
</head>
<body>
  <script>
    console.log(window.ENV)
  </script>
</body>
</html>

Configurable Options

Namespace

process.env = {
  'WILLEM': 'DAFOE',
  'MICHAEL': 'DOUGLAS',
}

app.use('/env', expressEnv({ namespace: 'window.LEAKY_ENVIRONMENT' }))
// GET /env: window.LEAKY_ENVIRONMENT = {"WILLEM":"DAFOE","MICHAEL":"DOUGLAS"}

Black and Whitelisting

As an array of strings:

process.env = {
  'WILLEM': 'DAFOE',
  'MICHAEL': 'DOUGLAS',
}

app.use('/env', expressEnv({ whitelist: ['MICHAEL'] }))
// GET /env: window.ENV = {"MICHAEL":"DOUGLAS"}

As a function:

process.env = {
  'WILLEM': 'DAFOE',
  'MICHAEL': 'DOUGLAS',
}

app.use('/env', expressEnv({ blacklist: (value: string, key: string) => key.includes('CH') }))
// GET /env: window.ENV = {"WILLEM":"DAFOE"}

Package Sidebar

Install

npm i express-env

Weekly Downloads

2

Version

1.0.4

License

MIT

Unpacked Size

3.26 kB

Total Files

4

Last publish

Collaborators

  • kewitz