3.5 KiB
3.5 KiB
开发指南
本文档将帮助您了解XUGOU项目的开发环境配置、项目结构和开发流程。
环境要求
在开始开发XUGOU项目之前,请确保您的系统满足以下要求:
- Node.js >= 18
- Go >= 1.24
- Git
项目结构
XUGOU项目分为三个主要部分:
前端 (frontend)
前端使用React + TypeScript开发,目录结构如下:
frontend/
├── public/ # 静态资源
├── src/ # 源代码
│ ├── api/ # API调用
│ ├── components/ # 通用组件
│ ├── pages/ # 页面组件
│ ├── store/ # 状态管理
│ ├── styles/ # 样式文件
│ ├── types/ # TypeScript类型定义
│ └── utils/ # 工具函数
├── .env.local # 本地环境变量
├── package.json # 项目依赖
├── tsconfig.json # TypeScript配置
└── vite.config.ts # Vite配置
后端 (backend)
后端基于Cloudflare Workers开发,目录结构如下:
backend/
├── src/ # 源代码
│ ├── controllers/ # 控制器
│ ├── models/ # 数据模型
│ ├── routes/ # 路由定义
│ └── utils/ # 工具函数
├── schema.sql # 数据库架构
├── wrangler.toml # Cloudflare Workers配置
└── package.json # 项目依赖
客户端 (agent)
监控客户端使用Go语言开发,目录结构如下:
agent/
├── cmd/ # 命令行命令
│ └── agent/ # 命令行实现
├── pkg/ # 功能包
│ ├── collector/ # 数据收集器
│ └── reporter/ # 数据上报器
├── main.go # 程序入口
└── go.mod # Go依赖
开发流程
1. 克隆项目
git clone https://github.com/zaunist/xugou.git
cd xugou
2. 前端开发
# 进入前端目录
cd frontend
# 安装依赖
pnpm install
# 配置环境变量
cp .env.local.example .env.local
# 编辑.env.local,设置后端API地址
# 启动开发服务器
pnpm run dev
前端开发服务器将在 http://localhost:5173 启动。
3. 后端开发
# 进入后端目录
cd backend
# 安装依赖
pnpm install
# 启动开发服务器
pnpm run dev
后端开发服务器将在本地启动,通常在控制台输出中会显示地址。
4. 客户端开发
# 进入客户端目录
cd agent
# 构建客户端
go build -o xugou-agent
# 运行客户端(控制台输出模式)
./xugou-agent --server console start
代码提交规范
为保持代码库的一致性和可维护性,请遵循以下代码提交规范:
-
分支管理:
main:主分支,只接受稳定版本的合并dev:开发分支,日常开发在此分支上进行- 功能分支:以
feature/为前缀,例如feature/dashboard - 修复分支:以
fix/为前缀,例如fix/memory-leak
-
提交信息:
- 格式:
类型: 描述,例如feat: 添加用户认证功能 - 类型包括:
feat:新功能fix:修复bugdocs:文档更新style:代码风格修改(不影响代码功能)refactor:重构代码test:添加或修改测试chore:构建过程或工具变动
- 格式:
-
代码审查:所有代码合并到主分支前需要通过代码审查