DOKK / manpages / debian 12 / node-loose-envify / loose-envify.1.en
LOOSE-ENVIFY(1) loose-envify man page LOOSE-ENVIFY(1)

loose-envify - replace Node.js environment variables with plain strings

loose-envify <javascript_source_file.js>

Performs a Javascript source-to-source transformation (transpiling), that efficiently replaces Node.js process.env environment variables with plain strings. This makes the environment variable checks faster and easier to optimize out.

Running this source code:

if (process.env.NODE_ENV === "development") {

console.log('development only') }

through loose-envify:

loose-envify index.js > bundle.js

with NODE_ENV set to production results in:

if ("production" === "development") {

console.log('development only') }

which, when run through a minifier, would be stripped out completely.

However, if you run the same script through loose-envify with NODE_ENV set to development it gives:

if ("development" === "development") {

console.log('development only') }

The if statement will evaluate to true, so the code won't be removed.

Andres Suarez <zertosh@gmail.com>

This manual page was written by Paolo Greppi <paolo.greppi@libpf.com> for the Debian project (and may be used by others), also based on material from the envify README (https://github.com/hughsk/envify) by Hugh Kennedy <hughskennedy@gmail.com> and the envify contributors.

November 2022 v1.3.0