感谢你对 SEKAI Hub 的关注!我们欢迎任何形式的贡献。
本项目是 SEKAI 生态的核心门户。查看完整的项目列表: SEKAI Hub
如果你发现了 Bug,请通过 GitHub Issues 报告:
- 检查是否已有相同的 Issue
- 使用清晰的标题描述问题
- 提供详细的复现步骤
- 说明预期行为和实际行为
- 提供环境信息(浏览器、操作系统等)
- 如果可能,提供截图或错误日志
我们欢迎新功能建议:
- 先在 Issues 中讨论你的想法
- 说明功能的使用场景和价值
- 如果可能,提供设计草图或示例
- 等待维护者反馈后再开始开发
# Fork 仓库后克隆到本地
git clone https://github.com/your-username/hub.git
cd hub
# 添加上游仓库
git remote add upstream https://github.com/25-ji-code-de/hub.git# 从 main 分支创建新分支
git checkout -b feature/your-feature-name
# 或
git checkout -b fix/your-bug-fix- 遵循项目的代码风格
- 添加必要的注释
- 确保代码可以正常运行
- 如果需要,更新文档
我们使用 Conventional Commits 规范:
# 提交格式
<type>: <description>
# 类型 (type)
feat: 新功能
fix: Bug 修复
docs: 文档更新
style: 代码格式(不影响功能)
refactor: 重构
test: 测试相关
chore: 构建/工具相关
perf: 性能优化
# 示例
git commit -m "feat: 添加项目卡片动画效果"
git commit -m "fix: 修复 OAuth 回调处理错误"
git commit -m "docs: 更新部署文档"# 推送到你的 Fork
git push origin feature/your-feature-name
# 在 GitHub 上创建 Pull RequestPull Request 要求:
- 清晰的标题和描述
- 关联相关的 Issue(如果有)
- 通过所有测试(如果有)
- 代码审查通过
JavaScript 项目:
- 使用 2 空格缩进
- 使用 ES6+ 语法
- 变量命名使用 camelCase
- 常量使用 UPPER_SNAKE_CASE
- 类名使用 PascalCase
关键逻辑必须添加注释:
// ✅ 好的注释
// 使用 PKCE 生成 code_verifier 和 code_challenge
const codeVerifier = generateRandomString(128);
const codeChallenge = await generateCodeChallenge(codeVerifier);
// ❌ 不必要的注释
// 设置变量 x 为 10
const x = 10;HTML/CSS:
- 使用语义化 HTML 标签
- CSS 类名使用 kebab-case
- 保持样式的一致性和可维护性
- 保持分支更新
git fetch upstream
git rebase upstream/main- 小步提交
- 每个 commit 只做一件事
- commit 信息要清晰明确
- 避免强制推送
- 不要使用
git push --force到公共分支 - 如果必须,使用
git push --force-with-lease
- 手动测试你的更改
- 测试不同浏览器的兼容性
- 测试响应式布局
- 确保 OAuth 流程正常工作
所有 Pull Request 都需要经过代码审查:
- 维护者会审查你的代码
- 可能会要求修改
- 请及时响应反馈
- 保持友好和专业的态度
如果你的更改影响了用户使用方式:
- 更新 README.md
- 更新相关文档
- 添加代码注释
- 如果需要,添加示例
我们特别欢迎以下类型的贡献:
- 🐛 Bug 修复
- 📝 文档改进
- ♿ 可访问性改进
- 🌐 国际化/本地化
- ⚡ 性能优化
- 🎨 UI/UX 改进
由于使用了 ES Modules 和 OAuth 跳转,你需要一个本地服务器:
python3 -m http.server 8000然后访问: http://localhost:8000
注意: OAuth 回调需要在 SEKAI Pass 中配置 http://localhost:8000/callback 作为允许的回调地址。
参与本项目即表示你同意遵守我们的 行为准则。
通过贡献代码,你同意你的贡献将在与本项目相同的许可证下发布。
再次感谢你的贡献!
Made with 💜 by the 25-ji-code-de team