以下插件需要全局安装,用于 buf generate 生成后端代码:
- protoc-gen-go - 生成 Go Protobuf 代码
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
- protoc-gen-connect-go - 生成 Connect-Go 代码
go install connectrpc.com/connect/cmd/protoc-gen-connect-go@latest
- protoc-gen-connect-openapi - 从 Proto 生成 OpenAPI 规范
go install github.com/sudorandom/protoc-gen-connect-openapi@latest
注意: 前端 TypeScript 代码生成使用 buf 远程插件,无需本地安装。 注意: ent ORM 通过
go generate自动下载,无需预先安装。
# 启动完整开发环境(推荐)
task dev| 命令 | 说明 |
|---|---|
task dev |
启动完整开发环境,自动生成 proto 代码并启动前后端服务 (mprocs TUI) |
task dev:frontend |
仅启动前端开发服务 |
task dev:backend |
仅启动后端服务 |
| 命令 | 说明 |
|---|---|
task proto |
完整 proto 工作流:lint → format → generate → check |
task proto:lint |
检查 proto 文件规范 |
task proto:format |
格式化 proto 文件 |
task proto:breaking |
检查 proto 破坏性变更(对比 main 分支) |
| 命令 | 说明 |
|---|---|
task proto:gen |
生成所有 proto 代码(前后端并行) |
task proto:gen:backend |
仅生成后端 Go 代码 |
task proto:gen:frontend |
仅生成前端 TypeScript 代码 |
| 命令 | 说明 |
|---|---|
task proto:check |
检查生成代码的正确性(前后端并行) |
task proto:check:backend |
检查后端 Go 代码编译 |
task proto:check:frontend |
检查前端 TypeScript 类型 |
| 命令 | 说明 |
|---|---|
task proto:watch |
监听 proto 变化,自动生成并检查 |
task proto:watch:fast |
监听 proto 变化,仅生成不检查(更快) |
├── proto/ # Proto 定义文件
├── backend/ # Go 后端服务
│ └── gen/ # 生成的 Go 代码
├── frontend/ # React 前端应用
│ └── src/gen/ # 生成的 TypeScript 代码
└── Taskfile.yml # 任务配置