@abledevs/nps-utils
v2.0.0
Published
Utilities for nps (npm-package-scripts)
Downloads
3
Readme
This repository has been forked from nps-utils
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
.
Installation
This module is distributed via [npm][npm] which is bundled with [node][node] and
should be installed as one of your project's dependencies
:
npm install 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.concurrentNPS('lint', 'build', 'test --coverage'),
lint: 'eslint .',
build: 'webpack --env.production',
test: 'jest'
}
}
Available methods:
Series Commands
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
validate: npsUtils.series('nps build', 'nps lint', 'nps test'),
lint: 'eslint .',
build: 'webpack --env.production',
test: 'jest'
}
}
Rimraf Commands
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
clean: npsUtils.rimraf('build'),
}
}
Copy Commands
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
copy: npsUtils.copy('dist', 'build'),
}
}
Cross-Env Commands
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
copy: npsUtils.crossEnv('NODE_ENV=production nps build'),
build: 'webpack --env.production'
}
}
isDocker Commands
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
copy: npsUtils.isDocker() ? 'nps watchInsideDocker' : 'nps watch',
watchInsideDocker: 'webpack --env.production',
watch: 'webpack --env.production'
}
}
Concurrently Commands - Experimental
const npsUtils = require('nps-utils')
module.exports = {
scripts: {
validate: npsUtils.concurrentNPS('build', 'lint', 'test'),
lint: 'eslint .',
build: 'webpack --env.production',
test: 'jest'
}
}
LICENSE
MIT