Name of the package.
Some rules:
The name must be less than or equal to 214 characters. This includes the scope for scoped packages.
The names of scoped packages can begin with a dot or an underscore. This is not permitted without a scope.
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
Current package version.
Version must be parseable by node-semver, which is bundled with npm as a dependency.
Optional
authorOptional
binOptional
browserOptional
bugsOptional
bundleOptional
configOptional
contributorsOptional
cpuOptional
dependenciesOptional
descriptionOptional
devOptional
directoriesOptional
enginesOptional
filesOptional
fundingOptional
homepageOptional
keywordsOptional
licenseOptional
mainOptional
manOptional
optionalOptional
osOptional
overridesOptional
peerOptional
peerOptional
privateOptional
publishOptional
repositoryOptional
scriptsOptional
workspaces
The general shape of most package.json (npm) files.
Taken from NPM docs. Last updated 2025-05-14.
Since
2.0.0-alpha