Jd Fiscus
Standard Nerd
{ "name": "super-cool-package", "version": "1.0.0", "scripts": { "start": "node src/index.js" }, "dependencies": { ... } "devDependencies": { ... } }
{ "name": "super-cool-package", "version": "1.0.0", "scripts": { "prepack": "run BEFORE a tarball is packed (on npm pack, npm publish, and when installing git dependencies)", "postpack": "Run AFTER the tarball has been generated and moved to its final destination.", // PUBLISH "publish": "", "postpublish": "Run AFTER the package is published.", // INSTALL "preinstall": "Run BEFORE the package is installed", "install": "", "postinstall": "Run AFTER the package is installed.", "preuninstall": "Run BEFORE the package is uninstalled.", "uninstall": "Run BEFORE the package is uninstalled.", "postuninstall": "Run AFTER the package is uninstalled", // VERSION "preversion": "Run BEFORE bumping the package version.", "version": "Run AFTER bumping the package version, but BEFORE commit.", "postversion": "Run AFTER bumping the package version, and AFTER commit.", // TEST "pretest":"", "test":"", "posttest": "Run by the npm test command.", // STOP "prestop":"", "stop":"", "poststop": "Run by the npm stop command.", // START prestart":"", "start":"", "poststart": "Run by the npm start command.", // RESTART "prerestart":"", "restart":"", "postrestart": "Run by the npm restart command. Note: npm restart will run the stop and start scripts if no restart script is provided.", "preshrinkwrap":"", "shrinkwrap":"", "postshrinkwrap": "Run by the npm shrinkwrap command.", }, "dependencies": { ... } "devDependencies": { ... } }
... "scripts": { "start": "node index.js", "hello": "echo 'Hello World!'" } ... $ npm run hello Hello World!
... "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "deploy": "echo 'deploying...' && zip -r lambda.zip . && aws lambda update-function-code --function-name bluebot-alexa-skill --zip-file fileb://lambda.zip --profile dddc && rm -rf lambda.zip && echo 'deploy complete'" } ... $ npm run hello $ "echo 'deploying...' $ zip -r lambda.zip . $ aws lambda update-function-code --function-name bluebot-alexa-skill --zip-file fileb://lambda.zip --profile dddc $ rm -rf lambda.zip $ echo 'deploy complete'"
... "scripts": { "start": "sudo PORT=80 react-scripts start", "test": "react-scripts test --env=jsdom --coverage --collectCoverageFrom=**/components/*", "testnocoverage": "react-scripts test --env=jsdom", "prettier": "prettier \"**/*.+(js|jsx|json|css|less|scss|sass|graphql)\"", "format": "npm run prettier -- --write", "validate": "npm run lint && npm run prettier -- --list-different", "precommit": "lint-staged", "swagger": "sh scripts/swagger.sh" }, ...
# Custom branch argument branch=$1 if [ $# -eq 0 ] then branch="develop" fi # Remove current swagger.json rm -rf src/assets/*.swagger.json # Make sure documentation is up to date cd ../documentation/apis git checkout $branch git pull # Generate ./node_modules/yamljs/bin/yaml2json -psr . mv *.swagger.json ../../frontend/src/assets/ # Return to project cd ../../frontend
By Jd Fiscus
Understanding NPM scripts