Metalsmith Environmental Variables Plugin
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.editorconfig
.gitignore
.travis.yml
HISTORY.md
LICENSE.md
README.md
index.js
package.json

README.md

Metalsmith Enviromental Variables Plugin NPM version

Build Status Dependency Status

Metalsmith plugin to register all environmental variables as metadata.

Installation

npm install --save metalsmith-env

CLI

If you are using the command-line version of Metalsmith, you can install via npm, and then add the metalsmith-env key to your metalsmith.json file:

{
  "plugins": {
    "metalsmith-env": {}
  }
}

JavaScript

If you are using the JS Api for Metalsmith, then you can require the module and add it to your .use() directives:

var env = require('metalsmith-env');

metalsmith.use(env());

Usage

Once installed, all environment variables, from process.env, become available as Metalsmith metadata.

Options

opts.variables

An array of default variables that will be available. Environmental variables will then override the default set.

opts.overrides

An array of variables that will completely override the given set of environmental variables.

opts.env

The assumed environmental variables, defaults to process.env.

Example

The following example uses Jade and Metalsmith JSTransformer:

index.jade

---
title: Environmental Variables
---
doctype html
html(lang="en")
  head
    title= title
  body
    h1= title
    p This is the environmental variable "NODE_ENV":
    code
      pre= NODE_ENV

Build

$ NODE_ENV=production node_modules/.bin/metalsmith

Result

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Environmental Variables</title>
  </head>
  <body>
    <h1>Environmental Variables</h1>
    <p>This is the environmental variable "NODE_ENV":</p>
    <code><pre>production</pre></code>
  </body>
</html>

License

MIT