package.json 生成器
无需运行 npm init 并回答十一个提示问题,只需填写表格即可获得格式规范、结构完整的 package.json 文件。该生成器涵盖了所有必填字段(名称、版本)、常用字段(脚本、依赖项、开发依赖项、引擎)以及关键信息(代码仓库、错误记录、关键词、许可证),确保软件包具备可发现性和可发布的特性。
如何生成您的 package.json 文件
-
1
输入名称和版本
名称需遵循 npm 规则:使用小写字母、支持 URL 长度限制且长度不超过 214 个字符。版本号采用 semver 格式(例如 0.1.0)。
-
2
选择模块类型
CommonJS(默认)或通过“type”:“module”参数 ESM 。此设置适用于Node.js 14及以上版本项目。
-
3
添加脚本
启动、构建、测试、代码检查,这些命令均通过 `npm run <name>` 运行。
-
4
列表依赖项
运行时包位于依赖项中;开发工具则位于开发依赖项中。
-
5
设置元数据
描述、作者、许可证、存储库网址、关键词。
-
6
复制输出内容
将内容粘贴到项目根目录下的新 package.json 文件中。
最为重要的字段
| 字段 | 必填? | 备注 |
|---|---|---|
name |
是 | 小写字符,长度为 1–214 个字符,适用于 URL |
version |
是 | Semver(主要版本号.次要版本号.修订版) |
type |
否 | 用于 ESM 时填 “module”;CommonJS 则省略 |
main |
推荐使用 | CommonJS 的入口点(index.js) |
exports |
推荐版 | 双 CJS / ESM 的现代出口地图 |
scripts |
强烈推荐 | npm run <name> 命令 |
dependencies |
根据需要 | 运行时包 |
devDependencies |
根据需要 | 构建工具、测试运行器、代码检查工具 |
engines |
有则更好 | 所需 Node 版本范围 |
license |
适用于发布 | 类似于 MIT、Apache-2.0 的 SPDX 标识符 |
Semver 轻松备考指南
1.0.0,major.minor.patch^1.0.0,兼容 1.x.x 版本(≥1.0.0,<2.0.0)~1.0.0,仅适用于补丁更新(版本号 ≥ 1.0.0 且 < 1.1.0)>=1.0.0 <2.0.0,明确范围1.0.0-beta.1,prereleaselatest,npm 标签,非版本号
运行npm install package时的默认版本为^,该版本支持无缝升级。
值得拥有的标准脚本
{
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js",
"build": "tsc",
"test": "vitest",
"lint": "eslint .",
"format": "prettier --write ."
}
}
命名陷阱
- 无大写字母。
MyPackage不通过npm install的测试。 - 无需空格。 使用连字符:
my-package。 - Scope名称 对于GitHub或npm组织,均以
@org/开头:例如@acme/utils。 - 保留字。
node_modules、favicon.ico、core、express不能作为软件包名称使用。
许可证选项
选择一个公认的 SPDX 标识符:
- MIT,最为宽松且常见的选择。
- Apache-2.0,具有专利授权的宽松许可协议。
- ISC,非常简短的类MIT许可证,为npm默认许可证。
- GPL 3.0 或更高版本,共享许可。
- UNLICENSED,私有软件包,不得用于分发。
错误或歧义的许可证字符串会在 npm 发布时触发警告。
常见问题
当有人在使用您开发的软件包的项目中运行 npm install 时,相关依赖项便会自动安装。开发依赖项仅安装在该软件包自身的开发环境中:运行时所需的软件包应归入“依赖项”类别,而测试/构建工具则应归入“开发依赖项”类别。
是的,适用于应用程序场景。lockfile可精确指定版本号,并确保在不同机器及持续集成环境中实现可复现的安装。对于发布到npm的库包,lockfile为可选配置,用户可自行生成专属lockfile。
仅当您希望默认使用 ESM(导入/导出语法)格式时才启用该选项;否则,.js文件将被视为CommonJS文件。此外,无论文件“类型”如何,均可使用.mjs格式处理 ESM 文件或使用.cjs格式处理CommonJS文件。
代码所使用的节点版本。当前常见的选择是 "engines": {"node": ">=18"}。该提示属于警告而非错误,但开发工具会予以识别,用户也可正确进行标记。
相关工具
ASCII 表参考
完整 ASCII 表,覆盖 0 到 127;列出每个代码的十进制、十六进制、八进制、二进制值和 HTML 数字字符引用写法,包括 NUL、LF、DEL。
HTML 字符参考
可搜索的 HTML 实体列表,含命名代码与数值代码,并支持一键复制特殊字符和符号。
键盘快捷键参考
搜索 macOS、Windows 和 Linux 上 VS Code、Chrome 以及使用 GNU Readline 的 Bash 的文档默认快捷键。
邮箱验证器
验证邮箱地址:RFC 5322 语法检查、实时 MX 记录查询,并显示本地部分、域名和长度详情。不会发送任何邮件。
编辑器配置生成器
根据你的缩进样式与大小、行尾、字符集和空格规则生成 .editorconfig 文件,让不同集成开发环境(IDE)和编辑器的格式保持一致。
证书解码器
粘贴一张 X.509 PEM 证书,并查看解码后的字段:主体、颁发者、序列号、签名算法、有效期及主体备用名称(SAN)。
此工具还提供其他语言版本
- Trình tạo package.json [VI]
- Package.json-generator [SV]
- package.json-Generator [DE]
- Generador de Package.json [ES]
- ตัวสร้าง package.json [TH]
- مولد package.json [AR]
- Package.json 생성기 [KO]
- Générateur de package.json [FR]
- Generator package.json [ID]
- Package.json-generator [NL]
- Generator package.json [PL]
- PackageJsonジェネレータ [JA]
- Gerador de Package.json [PT]
- Package.json Generator [EN]
- Generatore di Package.json [IT]
- Генератор package.json [RU]
- Package.json Oluşturucu [TR]