name
项目的名称,当你选择发布(publish)包到npm仓库时,name字段是必选的。
version
项目的版本号。当你选择发布(publish)包到npm仓库时,name字段是必选的。 名称和版本共同构成一个假定完全唯一的标识符。
author
项目作者。(一个人)
contributors
项目作者、贡献值。(一组人)
description
项目的描述。 它是一个字符串。 这有助于人们发现你的包。
keywords
项目的描述关键字。 它是一个字符串数组。 这有助于人们发现你的包。
homepage
项目主页的 url。这有助于人们使用你的包。
bugs
项目问题跟踪器的 url 和 应向其报告问题的电子邮件地址。 这些对于遇到你的包问题的人很有帮助。
license
项目许可证。以便人们知道他们如何被允许使用它,以及你对其施加的任何限制。
funding
帮助资助项目开发的方法的最新信息。它是一个包含 URL 的对象,或字符串 URL,或数组。
files
项目作为依赖安装时要包含的条目,它是一个文件模式数组。 文件模式遵循与 .gitignore 类似的语法。
main
项目作为依赖时的主要入口点,相当于项目默认到处。 如果未设置 main,则默认为包根文件夹中的 index.js。
browser
如果你的模块打算在客户端使用,则应使用浏览器字段而不是主字段。 这有助于提示用户它可能依赖于 Node.js 模块中不可用的原语。 (例如 window)
bin
项目的可执行文件,npm将会把它们安装到 PATH 中,它是命令名称到本地文件名的映射。
repository
项目代码的位置。有助于他人找到代码。
scripts
通过npm run 运行的脚本。
config
持续存在的项目脚本中使用的配置参数。
dependencies
项目生产依赖。
devDependencies
项目开发依赖
engines
项目适用的 node 版本。
os
将在哪些操作系统上运行。
cpu
项目在哪些cpu 架构上运行。
private
项目的 package.json 中设置了 "private": true, npm 将拒绝发布它。
示例
{
"name":"preject",
"version":"0.0.1",
"auther":"daiend",
"contributors":{
"name": "Barney Rubble",
"email": "b@rubble.com",
"url": "http://barnyrubble.tumblr.com/"
},
"funding": {
"type": "individual",
"url": "http://example.com/donate"
},
"files":["/lib"],
"main":"lib/index.js",
"bin": {
"myapp": "./cli.js"
},
"repository": {
"type": "git",
"url": "https://github.com/facebook/react.git",
"directory": "packages/react-dom"
},
"scripts": {
"test": "pnpm run test"
},
"config": {
"port": "8080"
},
"dependencies": {
"boo": "2.0.1"
},
"devDependencies": {
"boo": "2.0.1"
},
"engines": {
"node": ">=0.10.3"
},
"cpu": ["x64", "ia32"]
}