Basic
{
"name": "expo",
"description": "My package",
"version": "0.1.0",
"license": "MIT",
"keywords": ["http", "server"],
"author": "Rico Sta. Cruz <[email protected]>",
"engines": {
"node": ">=0.8.0"
},
"main": "index",
"bin": {
"command": "./bin/command"
},
"repository": {
"type": "git",
"url": "https://github.com/rstacruz/___.git"
},
}
Highlighted lines are required.
Dependencies
"dependencies": {
"colors": "*",
"flatiron": "0.1.x",
"flatiron": "~0.1.0",
"plates": "https://github.com/user/project/tarball/branch",
"stuff": "git://github.com/user/project.git#commit-ish"
},
"devDependencies": { ··· },
"peerDependencies": { ··· },
"optionalDependencies": { ··· },
See Semver cheatsheet for explanation of version ranges.
Scripts
"scripts": {
"start": "node ./bin/xxx", /* npm start */
"test": "vows --spec --isolate", /* npm test */
"postinstall": "...",
"prepublish": "grunt build", /* after 'npm install' and before 'npm
publish' */
}
Misc
"private": true,
"preferGlobal": true
Config
{
"config": {
"foobar": "hello"
},
"scripts": {
"run": "echo $npm_package_config_foobar"
}
}
Keys in config
are exposed as env vars to scripts.
References
- http://package.json.nodejitsu.com/
npm help package.json
0 Comments for this cheatsheet. Write yours!