nps-utils
Utilities for nps (npm-package-scripts)
The problem
nps is a great package to empower your scripts and there are some common
things you wind up doing to keep your package-scripts.js file clean, useful,
and maintainable. So you wind up duplicating utility functions across projects.
This solution
This has several utility functions you'll often want when using nps.
Check out what the concurrent and runInNewWindow methods can do:
Installation
This module is distributed via npm which is bundled with node and
should be installed as one of your project's devDependencies:
npm install --save-dev nps-utils
Usage
You'll most likely use this in your package-scripts.js file:
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
validate: npsUtils.concurrent.nps('lint', 'build', 'test --coverage'),
lint: 'eslint .',
build: 'webpack --env.production',
test: 'jest'
}
}
Available methods:
API docs can be found here
- concurrent
- series
- runInNewWindow
- rimraf
- ifWindows
- ifNotWindows
- copy
- ncp
- mkdirp
- open
- crossEnv
- includePackage
nps also exports common-tags as commonTags which can be
really helpful for long scripts or descriptions.
Or, see the JSDoc right in the source code 😎
Inspiration
This package was inspired by the removal of --parallel from p-s
here.
Other Solutions
I am unaware of other solutions, but if you come across any, please add a PR to list them here!
Contributors
Thanks goes to these people (emoji key):
Kent C. Dodds 💻 📖 🚇 ⚠️ |
Huy Nguyen 📖 🚇 |
Keith Gunn 🐛 💻 📖 ⚠️ |
Mike Cann 💻 ⚠️ |
|---|---|---|---|
This project follows the all-contributors specification. Contributions of any kind welcome!
LICENSE
MIT