贡献指南
感谢您对 NavBook 项目的关注!我们欢迎各种形式的贡献,包括但不限于:
- 提交 Bug 报告
- 提出功能建议
- 改进文档
- 提交代码修复
- 分享使用经验
开发环境搭建
前置要求
- Node.js >= 18
- npm >= 9 或 pnpm >= 8
- Git
克隆仓库
bash
git clone https://github.com/gitcoffee-os/navbook.git
cd navbook安装依赖
bash
npm install
# 或
pnpm install启动开发服务器
bash
npm run dev贡献流程
1. 创建 Issue
在提交代码之前,请先创建 Issue 描述您要解决的问题或要添加的功能:
- 如果是 Bug,请描述复现步骤
- 如果是功能,请描述使用场景
2. Fork 仓库
点击 GitHub 页面的 Fork 按钮,将仓库 fork 到您的账号下。
3. 创建分支
bash
git checkout -b feature/your-feature-name
# 或
git checkout -b fix/your-bug-fix分支命名规范:
feature/*: 新功能fix/*: Bug 修复docs/*: 文档更新refactor/*: 代码重构
4. 提交代码
代码规范
- 使用 Prettier 进行代码格式化
- 遵循 Vue 3 组合式 API 风格
- TypeScript 严格模式启用
- 组件命名使用 PascalCase
- 函数命名使用 camelCase
提交信息规范
类型(scope): 简短描述
详细描述(可选)
Footer(可选)类型说明:
feat: 新功能fix: 修复docs: 文档style: 格式refactor: 重构perf: 性能优化test: 测试chore: 构建/工具
示例:
feat(url): 添加网址自动抓取功能
- 支持自动抓取网站标题
- 支持自动抓取网站图标
- 支持自动抓取网站描述
Closes #1235. 推送分支
bash
git push origin feature/your-feature-name6. 创建 Pull Request
- 访问您 fork 的仓库
- 点击 "New Pull Request"
- 填写 PR 描述,关联相关 Issue
- 等待代码审查
代码审查
所有代码提交都需要经过审查:
- 确保 CI 检查通过
- 至少一名维护者审查通过
- 解决审查意见
文档贡献
文档位于 docs/ 目录,使用 Markdown 编写。
文档规范
- 使用中文编写
- 代码块标明语言
- 图片放在
docs/public/images/目录
测试
运行测试
bash
# 运行所有测试
npm run test
# 格式检查
npm run format:check代码格式化
bash
# 自动格式化
npm run format发布流程
维护者会定期发布新版本:
- 更新版本号
- 更新 CHANGELOG
- 创建 Release
- 发布到 npm
行为准则
参与本项目即表示您同意遵守我们的行为准则:
- 尊重他人,友善交流
- 接受建设性批评
- 关注社区最佳利益
- 禁止骚扰、歧视等行为
获取帮助
许可证
贡献即表示您同意将代码以 Apache License 2.0 许可发布。
致谢
感谢所有为 NavBook 做出贡献的开发者!