package.json
name
The name must be less than or equal to 214 characters. This includes the scope for scoped packages.
The name can't start with a dot or an underscore.
New packages must not have uppercase letters in the name.
The name ends up being part of a URL, an argument on the command line, and a folder name. Therefore, the name can't contain any non-URL-safe characters.
version
description
keywords
homepage
bugs
license
author, contributors
files
files > .npmignore > .gitignore
always included files
package.json
README
CHANGES / CHANGELOG /HISTORY
LICENSE / LICENCE
NOTICE
The file in the "main" field
always ignored files
.git
CVS
.svn
.hg
.lock-wscript
.wafpickle-N
.*.swp
.DS_Store
._*
npm-debug.log
.npmrc
node_modules
config.gypi
*.orig
package-lock.json (use shrinkwrap instead)
main
browser
bin
If you have a single executable, and its name should be the name of the package, then you can just supply it as a string
would be the same as this:
man
Specify either a single file or an array of filenames to put in place for the man program to find
directories
directories.lib
directories.bin
directories.man
directories.doc
directories.example
directories.test
repository
shortcut syntax
scripts
config
dependencies
devDependencies
peerDependencies
bundledDependencies
optionalDependencies
engines
engineStrict
This feature was removed in npm 3.0.0
os
process.platform
cpu
process.arch
preferGlobal
DEPRECATED
private
publishConfig
Last updated