框架
关于向框架仓库贡献代码的一些具体要点。
在您阅读了通用贡献指南后,以下是关于向 nuxt/nuxt
仓库贡献代码的一些具体要点。
Monorepo 指南
packages/kit
: 用于编写 Nuxt 模块的工具包,发布为@nuxt/kit
。packages/nuxt
: Nuxt 的核心,发布为nuxt
。packages/schema
: 跨版本 Nuxt 类型定义和默认值,发布为@nuxt/schema
。packages/test-utils
: Nuxt 的测试工具,发布为@nuxt/test-utils
。packages/vite
: Nuxt 的 Vite 打包器,发布为@nuxt/vite-builder
。packages/webpack
: Nuxt 3 的 webpack 打包器,发布为@nuxt/webpack-builder
。
设置
要为 Nuxt 做出贡献,您需要设置本地环境。
- Fork
nuxt/nuxt
仓库到您自己的 GitHub 帐户,然后 clone 到您的本地设备。 - 确保使用最新的 Node.js (20.x)
- 启用 Corepack 以拥有
pnpm
和yarn
终端corepack enable
- 运行
pnpm install --frozen-lockfile
以使用 pnpm 安装依赖项终端pnpm install --frozen-lockfile
如果您要添加依赖项,请使用pnpm add
。pnpm-lock.yaml
文件是所有 Nuxt 依赖项的真实来源。 - 激活被动开发系统终端
pnpm dev:prepare
- 检出一个分支,您可以在其中工作并提交更改终端
git checkout -b my-new-branch
然后,在提交拉取请求之前,针对 playground 和 test 测试您的更改。
Playground
在处理拉取请求时,您可能需要检查您的更改是否正常工作。
您可以修改 playground/
中的示例应用程序,并运行
终端
pnpm dev
请确保不要将其提交到您的分支,但将一些示例代码添加到您的 PR 描述中可能会有所帮助。这可以帮助审阅者和其他 Nuxt 用户深入了解您构建的功能。
测试
每个新功能都应该有一个相应的单元测试(如果可能)。此仓库中的 test/
目录目前正在开发中,但请尽最大努力创建一个新测试,并遵循已有的示例。
在创建 PR 或将其标记为准备好审核之前,请通过运行确保所有测试均通过
终端
pnpm test
代码检查
您可能已经注意到,我们使用 ESLint 来强制执行编码标准。
在提交更改之前,要验证代码样式是否正确,请运行
终端
pnpm lint
您可以使用
如果仍然有错误,您必须手动更正它们。
pnpm lint --fix
来修复大多数样式更改。如果仍然有错误,您必须手动更正它们。
文档
如果您要添加新功能、重构或以任何其他方式更改 Nuxt 的行为,您可能需要记录这些更改。请在同一 PR 中包含对文档的任何更改。您不必在第一次提交时编写文档(但请在您的拉取请求足够成熟后尽快执行此操作)。
确保根据文档样式指南进行更改。
最终检查清单
当您提交 PR 时,有一个简单的模板需要填写。请在清单中勾选所有适当的“答案”。
文档指南
如果您发现任何我们可以改进文档或错误消息的地方,请打开一个 PR - 即使只是为了修复错别字!
确保根据文档样式指南进行更改。
快速编辑
如果您发现错别字或想要改写句子,您可以单击社区部分右侧的编辑此页链接。
直接在 GitHub 界面中进行更改并打开拉取请求。
较长的编辑
文档内容位于 nuxt/nuxt 仓库的 docs/
目录中,并以 markdown 格式编写。
要本地预览文档,请按照 nuxt/nuxt.com 仓库中的步骤操作。
我们建议您安装适用于 VS Code 的 MDC 扩展。
文档代码检查
文档使用 MarkdownLint 和 case police 进行代码检查,以保持文档的凝聚力。
终端
pnpm lint:docs
您还可以运行
pnpm lint:docs:fix
以突出显示和解决任何代码检查问题。打开 PR
请确保您的 PR 标题符合 conventional commits 指南。
PR 标题示例
docs: update the section about the nuxt.config.ts file