@hitorisensei/per-env
v2.1.2
Published
Clean up your package.json with per-env npm scripts
Downloads
53
Readme
per-env
Clean up your
package.json
with per-NODE_ENV
npm scripts.
Features
- [x] Call npm stages based on
NODE_ENV
(defaults todevelopment
)
Changes from 1.x
- [x] BREAKING Dropped support for per-env environment variables in package.json.This change was made to simplify the implementation and to avoid potential conflicts with other packages that set environment variables (dot-env, etc.).
- [x] Added support for different script runners (bun, yarn, etc).Previously all scripts were run with npm, regardless of the runner used to run per-env.
- [x] Added tests.
Example
{
"scripts": {
// If NODE_ENV is missing, defaults to "development".
"build": "per-env",
"build:development": "webpack -d --watch",
"build:staging": "webpack -p",
"build:production": "webpack -p",
// Deployment won't work unless NODE_ENV=production is explicitly set.
"deploy": "per-env",
"predeploy:production": "docker build -t ${DOCKER_USER}/${DOCKER_PROJECT} .",
"deploy:production": "docker push ${DOCKER_USER}/${DOCKER_PROJECT}",
// "npm start" is _the_ command to start the server across all environments.
"start": "per-env",
"start:development": "npm run build:development",
"prestart:production": "npm run build",
"start:production": "start-cluster build/server/server.js",
"prestart:staging": "npm run build",
"start:staging": "start-cluster build/server/server.js",
}
}
Installation
$ npm install --save per-env
License
MIT License 2016 © Eric Clemmons