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