贡献指南

参与 NDPR 开发

欢迎贡献

NDPR 是开源项目,欢迎任何形式的贡献!

贡献方式

🐛 报告 Bug

  • 搜索现有 Issue
  • 创建新 Issue
  • 使用 Bug 模板
  • 💡 提出建议

  • 搜索现有建议
  • 在 Discussions 中发起话题
  • 📝 完善文档

  • 修正错别字
  • 补充内容
  • 翻译文档
  • 💻 提交代码

  • Fork 项目
  • 创建功能分支
  • 提交 Pull Request
  • 开发环境

    环境要求

    软件版本
    Python3.6+
    MySQL5.7+
    Git-

    本地开发

    Bash
    # 克隆项目 git clone https://github.com/ndpreforged/NDPReforged.git cd NDPReforged # 创建虚拟环境 python -m venv venv source venv/bin/activate # Linux/Mac # 或 venv\Scripts\activate # Windows # 安装依赖 pip install flask pymysql werkzeug # 配置数据库 cp config/sql_config.json.example config/sql_config.json # 编辑配置文件 # 运行 python core.py

    代码规范

    Python

  • 使用 4 空格缩进
  • 遵循 PEP 8
  • 添加类型注解(推荐)
  • 写好文档字符串
  • 提交规范

    Text
    feat: 添加新功能 fix: 修复 Bug docs: 文档更新 style: 代码格式 refactor: 重构 test: 测试

    提交示例

    Bash
    git commit -m "feat: 添加封禁统计功能" git commit -m "fix: 修复 Token 验证问题" git commit -m "docs: 更新 API 文档"

    Pull Request 流程

  • Fork 项目
  • 创建 功能分支
  • 开发 并测试
  • 提交 更改
  • 推送 到你的仓库
  • 创建 Pull Request
  • PR 模板

    Markdown
    ## 描述 [简要描述这个 PR 做了什么] ## 改动的文件 - file1.py - file2.py ## 测试 [描述你如何测试这些改动] ## 截图(如果有 UI 变化) [添加截图]

    项目结构

    Text
    NDPReforged/ ├── core.py # 入口文件 ├── moduleloader.py # 模块加载器 ├── config/ # 配置文件 ├── module/ # 核心模块 │ ├── apiserver.py # API 服务 │ ├── token_manager.py # Token 管理 │ ├── sql_api.py # 数据库 API │ └── ... ├── v1/ # v1 兼容 ├── web/ # Web 界面 └── logs/ # 日志

    开发者列表

    感谢所有贡献者!

  • EXE_autumnwind - 核心开发者
  • Ender_drate - 核心开发者

  • <div class="custom-block tip">

    <div class="custom-block-title">开始贡献</div>

    1. 搜索 "good first issue" 标签<br>

    2. 选择一个任务<br>

    3. 开始贡献!

    </div>