localenvify

    1.0.1 • Public • Published

    localenvify

    defunctzombie/localenv and hughsk/envify combined for substack/node-browserify modules.

    Yes, it's a browserify transform.

    12factor config applied to frontend builds.”

    Installation

    npm install localenvify --save

    TL;DR; example

    Let's say you have a frontend index.js:

    var request = require('superagent');
    var api = process.env.API_ENDPOINT; // API http endpoint 
    request
      .get(api)
      .end(function apiCalled(res) {
        console.log(res.status);
      })

    And a .env file sitting in your current working dir.

    API_ENDPOINT=http://omg-api.com.dev

    Running browserify with the localenvify transform:

    browserify -t localenvify index.js
    # ... 
    # var request = require("superagent"); 
    # var api = "http://omg-api.com.dev"; 
    # ... 

    Now you don't want to store production environment config files in your repo:

    API_ENDPOINT="http://omg-api.com.production" browserify -t localenvify index.js 
    # ... 
    # var request = require("superagent"); 
    # var api = "http://omg-api.com.production"; 
    # ... 

    Specifying a custom env file

    defunctzombie/localenv only loads .env files when NODE_PRODUCTION !== 'production'.

    You can pass transform options to localenvify to load custom .env files.

    On the command line:

    browserify -t [ localenvify --envfile .env.test  ] index.js 

    In your package.json:

    {
      "browserify": {
        "transform": [
          ["localenvify", {"envfile": ".env.test"}]
        ]
      }
    }

    .env files

    .env file format is described in defunctzombie/localenv readme.

    You should use .env files for developer or test environments, not for production* environments.

    Install

    npm i localenvify

    DownloadsWeekly Downloads

    257

    Version

    1.0.1

    License

    ISC

    Last publish

    Collaborators

    • vvo