mirror of
https://github.com/KuekHaoYang/KVideo.git
synced 2026-08-16 09:13:42 +08:00
98 lines
2.9 KiB
Markdown
98 lines
2.9 KiB
Markdown
# 贡献指南 (Contributing Guide)
|
||
|
||
感谢你对 **KVideo** 项目感兴趣!我们非常欢迎并感谢社区的任何贡献,无论是修复 Bug、改进文档,还是提出新功能建议。
|
||
|
||
为了确保协作顺畅,请在提交贡献前花几分钟阅读以下指南。
|
||
|
||
## 🤝 行为准则
|
||
|
||
我们致力于构建一个开放、友好、包容的社区。请在参与项目时保持尊重和礼貌。
|
||
|
||
## 🛠 开发流程
|
||
|
||
### 1. Fork 项目
|
||
|
||
首先,将本仓库 Fork 到你自己的 GitHub 账号下。
|
||
|
||
### 2. 克隆到本地
|
||
|
||
```bash
|
||
git clone https://github.com/KuekHaoYang/KVideo.git
|
||
cd KVideo
|
||
```
|
||
|
||
### 3. 创建分支
|
||
|
||
请基于 `main` 分支创建新的功能分支。分支命名建议遵循以下规范:
|
||
|
||
* `feat/功能名称`: 新功能 (例如: `feat/add-subtitle-support`)
|
||
* `fix/问题描述`: 修复 Bug (例如: `fix/search-bar-layout`)
|
||
* `docs/文档修改`: 文档更新 (例如: `docs/update-readme`)
|
||
* `refactor/重构`: 代码重构 (例如: `refactor/api-client`)
|
||
|
||
```bash
|
||
git checkout -b feat/your-feature-name
|
||
```
|
||
|
||
### 4. 开发与调试
|
||
|
||
请确保你的代码符合项目的技术栈和风格:
|
||
|
||
* **TypeScript**: 请尽量使用强类型,避免使用 `any`。
|
||
* **Tailwind CSS**: 使用 Tailwind 类名进行样式开发,保持 "Liquid Glass" 的设计风格。
|
||
* **组件化**: 保持组件的单一职责,复用 `components/ui` 下的基础组件。
|
||
|
||
启动本地开发服务器:
|
||
|
||
```bash
|
||
npm run dev
|
||
```
|
||
|
||
### 5. 提交代码 (Commit)
|
||
|
||
我们推荐使用 [Conventional Commits](https://www.conventionalcommits.org/) 规范来编写提交信息:
|
||
|
||
* `feat`: 新功能
|
||
* `fix`: 修复 Bug
|
||
* `docs`: 文档变更
|
||
* `style`: 代码格式 (不影响代码运行的变动)
|
||
* `refactor`: 重构 (既不是新增功能,也不是修改 bug 的代码变动)
|
||
* `perf`: 性能优化
|
||
* `test`: 增加测试
|
||
* `chore`: 构建过程或辅助工具的变动
|
||
|
||
示例:
|
||
```bash
|
||
git commit -m "feat: 增加视频倍速播放功能"
|
||
```
|
||
|
||
### 6. 提交 Pull Request (PR)
|
||
|
||
1. 将代码推送到你的远程仓库:`git push origin feat/your-feature-name`
|
||
2. 在 GitHub 上发起 Pull Request 到 `KVideo:main` 分支。
|
||
3. 请在 PR 描述中详细说明你的修改内容、解决的问题以及测试截图(如果是 UI 变更)。
|
||
|
||
## 📐 代码风格
|
||
|
||
本项目使用 ESLint 和 Prettier 进行代码检查和格式化。在提交代码前,请确保通过了代码检查:
|
||
|
||
```bash
|
||
npm run lint
|
||
```
|
||
|
||
## 🐛 发现 Bug?
|
||
|
||
如果你发现了 Bug,请在 GitHub Issues 中提交报告。提交时请包含以下信息:
|
||
|
||
* Bug 的详细描述
|
||
* 复现步骤
|
||
* 预期的行为
|
||
* 截图或报错日志 (如果有)
|
||
* 你的运行环境 (浏览器版本, OS 等)
|
||
|
||
## 💡 提出新功能?
|
||
|
||
如果你有新的想法,欢迎在 Issues 中提出 Feature Request。请详细描述该功能的用途和你的实现思路。
|
||
|
||
再次感谢你的贡献!让我们一起把 KVideo 变得更好!
|