Generate npm/yarn install commands base on package.json
- Node.js ≥ 6.0.0, and npm
- UNIX-like shell, e.g. sh, bash, zsh
npm install --global generate-npm-installThis will generate npm install --save-{prod,bundle,optional,dev} or yarn add {,--optional,--dev} commands base on package.json in working directory
generate-npm-install # output contains: npm install --save... package1 package2 ...
NPM_TAG=latest generate-npm-install # output contains: npm install --save... package1@latest package2@latest ...
USE_YARN=true generate-npm-install # output contains: yarn add ...This will generate npm install commands for /path/to/directory/package.json
generate-npm-install /path/to/directory
NPM_TAG=latest generate-npm-install /path/to/directoryThis will execute generated npm install commands
generate-npm-install | sh
NPM_TAG=latest generate-npm-install | sh
generate-npm-install /path/to/directory | sh
NPM_TAG=latest generate-npm-install /path/to/directory | shconst generateNpmInstall = require('generate-npm-install')generateNpmInstall(options: {
process: {
env: {
TAG?: string,
NPM_TAG: string = TAG,
USE_YARN: string = 'false'
}
} = require('process'),
fs: {
readFileSync: (filename: string) => {
toString: (encoding: string = 'utf8') => string
}
} = require('fs'),
path: {
resolve: (...args: string[]) => string
} = require('path'),
directory: string = process.cwd()
}): stringoptions.process: object, default toprocessoptions.process.env: object, default to{}options.process.env.NPM_TAG: string, default tooptions.process.env.TAGoptions.process.env.TAG: string, default toundefinedoptions.process.env.USE_YARN: string, default to'false'options.fs: object, default tofsoptions.fs.readFileSync: functionoptions.path: object, default topathoptions.path.resolve: functionoptions.directory: string, path to a directory, default tooptions.process.cwd()- Returns a string contains UNIX shell script