# 贡献指南

很高兴你有兴趣为 AiToEarn 做出贡献——这太棒了！我们迫不及待想看到你的成果。我们致力于构建最佳的 AI 赚钱平台。来自社区的任何帮助都非常宝贵。

我们需要快速迭代，但也希望确保像你一样的贡献者能获得尽可能顺畅的体验。我们编写这份贡献指南正是为了这个目的，旨在让你熟悉代码库以及我们与贡献者的合作方式，以便你可以快速进入正题。

本指南是一个持续完善的过程。如果有时它滞后于实际项目，我们非常感谢你的理解，并欢迎提出任何改进反馈。

## 在开始之前

正在寻找可以解决的问题？浏览我们的 [issues](https://github.com/AiToEarn/AiToEarn/issues) 并挑选一个开始吧！

### 友好的第一次开始

标题包含 **【good frist】** 的 issues，是我们为新的贡献者提供的issues。如果想加入我们的团队，请提交关联该 issues 的 PR。

加入我们，通过贡献代码，让我们一起构建一些很棒的东西！💡✨

别忘了在 PR 描述中链接现有的 issue

### 错误报告 (Bug Reports)

> [!IMPORTANT]
> 提交错误报告时，请务必包含以下信息：

- 清晰且描述性的标题
- 错误的详细描述，包括任何错误消息
- 复现错误的步骤
- 预期行为
- **日志**（如果有），对于后端问题，这非常重要
- 截图或视频（如果适用）

我们的优先级排序方式：

| 问题类型 | 优先级 |
| ------------------------------------------------------------ | --------------- |
| 核心功能错误（无法登录、应用无法工作、安全漏洞） | 严重 (Critical) |
| 非严重错误、性能提升 | 中等优先级 (Medium Priority) |
| 小修补（拼写错误、UI 令人困惑但可工作） | 低优先级 (Low Priority) |

### 功能请求 (Feature Requests)

> [!NOTE]
> 提交功能请求时，请务必包含以下信息：

- 清晰且描述性的标题
- 功能的详细描述
- 功能的使用场景
- 关于功能请求的任何其他背景信息或截图

我们的优先级排序方式：

| 功能类型 | 优先级 |
| ------------------------------------------------------------ | --------------- |
| 团队成员标记为高优先级的功能 | 高优先级 (High Priority) |
| 社区反馈中受欢迎的功能请求 | 中等优先级 (Medium Priority) |
| 非核心功能和小幅增强 | 低优先级 (Low Priority) |
| 有价值但不紧急 | 未来特性 (Future-Feature) |

## 开发环境设置

1. Fork 项目到你的 GitHub 账号
2. 创建特性分支：
  ```bash
  git checkout -b feature/your-feature-name
  ```
3. 提交你的更改：
  ```bash
  git add .
  git commit -m "feat: add new feature"
  ```
4. 推送到你的 Fork 仓库：
  ```bash
  git push origin feature/your-feature-name
  ```
5. 在 GitHub 上创建 Pull Request

## 提交你的 PR

### Pull Request 流程

1. Fork 本仓库
2. 在起草 PR 之前，请创建一个 issue 来讨论你想要进行的更改
3. 为你的更改创建一个新分支
4. 请相应地为你的更改添加测试
5. 确保你的代码通过现有的测试
6. 请在 PR 描述中链接该 issue，例如 `fixes #<issue_number>`
7. 等待合并！

### 项目设置

#### 后端

关于设置后端服务，请参考 [project/backend/README.md](./project/backend/README.md) 中的详细说明。该文档包含逐步指导，帮助你顺利运行后端。

#### 其他注意事项

我们建议在继续设置之前仔细阅读这些文档。

## 获取帮助

如果你在贡献过程中遇到困难或有紧急问题，只需通过相关的 GitHub issue 向我们提问即可。
