
Security News
ESLint Adds Official Support for Linting HTML
ESLint now supports HTML linting with 48 new rules, expanding its language plugin system to cover more of the modern web development stack.
npm-run-env
Advanced tools
A small NPM script-runner to easily substitute NODE_ENV from npm scripts name
# Install it either globally
npm i -g run-env
# Or locally in your project
npm i --save run-env
This utility is used to substitute NODE_ENV variable in NPM scripts like :
{
"scripts": {
"serve": "my-command app/",
"serve:dev": "NODE_ENV=development my-command app/",
"serve:prod": "NODE_ENV=production my-command app/",
"serve:custom": "NODE_ENV=some_custom_env my-command app/"
}
}
in order to only have to write :
{
"scripts": {
"serve": "my-command app/",
"serve:dev": "run-env",
"serve:prod": "run-env",
"serve:custom": "run-env"
}
}
The runner will use the script name prefix if no argument is provided.
Default substitution includes:
:dev
-> NODE_ENV=development
:prod
-> NODE_ENV=production
:local
-> NODE_ENV=local
:test
-> NODE_ENV=test
:ci
-> NODE_ENV=ci
One can add a custom substitution using an env variable name this way :
:<custom_suffix>
will use value from NPM_RUN_ENV_<custom_suffix_uppercased>_SUBSTITUTION
And the same way, default substitutions can be changed this way too.
For example :
NPM_RUN_ENV_CUSTOM_SUBSTITUTION=custom_env
will yield :custom
-> NODE_ENV=custom_env
NPM_RUN_ENV_DEV_SUBSTITUTION=custom_dev
will yield :dev
-> NODE_ENV=custom_dev
The runner expect to be used directly in package.json scripts, it won't work if you do an indirect execution :
{
"scripts": {
"env": "run-env",
"serve:dev": "npm run env" // WON'T WORK
}
}
FAQs
NPM utility to run scripts with NODE_ENV subtitutions
The npm package npm-run-env receives a total of 0 weekly downloads. As such, npm-run-env popularity was classified as not popular.
We found that npm-run-env demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
ESLint now supports HTML linting with 48 new rules, expanding its language plugin system to cover more of the modern web development stack.
Security News
CISA is discontinuing official RSS support for KEV and cybersecurity alerts, shifting updates to email and social media, disrupting automation workflows.
Security News
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.