Skip to content

Commit

Permalink
Update CONTRIBUTING-zh-CN.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Maidang1 authored Nov 23, 2024
1 parent f371c7e commit 792764a
Showing 1 changed file with 29 additions and 7 deletions.
36 changes: 29 additions & 7 deletions CONTRIBUTING-zh-CN.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,21 @@
# 贡献指南

非常感谢您对 Farm 插件的贡献, 在您提交 Pull Request 之前, 请先阅读以下指南
感谢您对 Farm 插件的贡献!在提交 Pull Request 之前,请仔细阅读以下指南

## 目录结构

目前 Farm 插件仓库支持 rust 插件和 JavaScript 插件。 rust 插件全部放置在 rust-plugins 下面
JavaScript 插件全部放置在 js-plugins 下面。同时为了方便管理,项目并存 pnpm monorepo 和 rust monorepo。
目前,Farm 插件仓库支持 Rust 插件和 JavaScript 插件。Rust 插件位于 `rust-plugins` 目录下,JavaScript 插件则在 `js-plugins` 目录中。为了便于管理,项目同时采用了 `pnpm monorepo``Rust workspace`

## 开发 rust 插件

rust 插件内部结构和 farm rust 提供的模版一致,可以直接使用 cli `pnpm create farm-plugin @farmfe/plugin-xxx --type rust` 工具创建,需要注意的是,cli 创建存在一些冗余文件,需要手动删除。可以参考其他的 rust 插件目录结构。同时需要将下列的 crate 包使用 monorepo 的包
Rust 插件的内部结构与 Farm Rust 提供的模板一致,您可以使用 CLI 工具创建插件:

```bash
pnpm create farm-plugin @farmfe/plugin-xxx --type rust
```
请注意,CLI 创建的项目可能包含一些冗余文件,您需要手动删除。建议参考其他 Rust 插件的目录结构。

同时需要将下列的 crate 包使用 `workspace` 的包:

```toml
[workspace.dependencies]
Expand All @@ -20,15 +26,31 @@ farmfe_macro_plugin = { version = "0.0.4" }
farmfe_toolkit = "0.0.13"
```

修改已有插件的时候,需要注意版本号的更新。需要在插件的根目录下面的运行 `npx changeset` && `npx changeset version` 来更新版本号。
修改已有插件时,请务必更新版本号。在插件根目录下运行以下命令以更新版本:

```bash
npx changeset
npx changeset version
```


## 开发 JavaScript 插件

开发 JavaScript 插件的时候,同样可以使用 cli `pnpm create farm-plugin @farmfe/plugin-xxx --type js` 来创建,其他和 rust 插件注意事项一致
JavaScript 插件的开发也可以使用 CLI 工具创建:

```bash
pnpm create farm-plugin @farmfe/plugin-xxx --type js
```
其他注意事项与 Rust 插件相同。

## 提交 commit 信息规范

为了提高 CI 的运行效率,尽可能的只发布有变动的包,但 rust 插件和 js 插件的发布流程差异较多,我们通过 commit message 来区分发布的包。提交信息的时候 全局运行 `pnpm commit` 来提交 commit 信息,需要根据提示来选择相应的 scope。
为了提高 CI 的运行效率,我们尽量只发布有变动的包。Rust 和 JavaScript 插件的发布流程存在差异,因此我们通过 `commit message` 来区分需要发布的包。请使用以下命令全局提交 commit 信息:

```bash
pnpm commit
```
根据提示选择相应的 scope。

## 提交 Pull Request

Expand Down

0 comments on commit 792764a

Please sign in to comment.