感谢你考虑为 BlueHIDFlow 做出贡献!这是一个开源的移动端自动化测试工具,我们欢迎任何形式的贡献。
请参阅我们的行为准则,确保所有参与者都能在友好、包容的环境中进行协作。
如果你发现了 Bug,请通过 GitHub Issues 提交报告。在提交之前:
- 搜索现有的 Issues,确认该 Bug 未被报告
- 使用 Bug 报告模板填写详细信息
- 包含以下信息:
- 固件版本
- 硬件型号(ESP32-S3 开发板类型)
- 复现步骤
- 预期行为 vs 实际行为
- 串口日志(如有)
如果你有新功能的想法:
- 先在 Issues 中讨论你的想法
- 等待维护者确认后再开始开发
- 使用功能请求模板描述功能需求和用例
- Fork 本仓库
- 创建功能分支 (
git checkout -b feature/amazing-feature) - 提交更改 (
git commit -m 'feat: add amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 提交 Pull Request
# 安装 PlatformIO
pip install platformio
# 克隆仓库
git clone git@github.com:antgroup/BlueHIDFlow.git
cd BlueHIDFlow
# 安装依赖
pio pkg install# 编译
pio run
# 编译并上传
pio run --target upload
# 串口监视器
pio device monitor -b 115200BlueHIDFlow/
├── src/ # 源代码
├── include/ # 头文件
├── lib/ # 外部库
├── docs/ # 文档
├── platformio.ini # PlatformIO 配置
└── config.example.h # 设备配置模板(复制为 include/config.h 后修改)
ble_hid.*- BLE HID 核心功能(键盘/鼠标)command_handler.*- MQTT 命令解析与执行config_manager.*- 配置持久化(NVS)connection_manager.*- WiFi/MQTT 连接管理mqtt_client.*- MQTT 客户端封装web_server.*- AP 模式 Web 配置界面
我们使用 Conventional Commits 规范:
<type>(<scope>): <subject>
<body>
<footer>
feat: 新功能fix: Bug 修复docs: 文档更新style: 代码格式(不影响功能)refactor: 代码重构perf: 性能优化test: 测试相关chore: 构建/工具相关
feat(ble): add multi-touch gesture support
- Add pinch-to-zoom gesture recognition
- Implement two-finger swipe detection
- Update gesture configuration in web UI
Closes #123
- 使用 Clang-Format 格式化代码
- 遵循 Google C++ 风格指南
- 函数和变量使用
snake_case命名 - 常量使用
UPPER_SNAKE_CASE命名 - 类和结构体使用
PascalCase命名
// ============================================
// 区块标题
// ============================================
// 单行注释说明
/**
* @brief 函数简要说明
* @param param1 参数1说明
* @return 返回值说明
*/// BlueHIDFlow 模块名称
// 功能简述
//
// Copyright 2024-2026 BlueHIDFlow Contributors
// SPDX-License-Identifier: Apache-2.0- 代码已通过编译
- 代码风格符合规范
- 已添加必要的注释
- 已更新相关文档
- 已测试基本功能
- Commit 信息符合规范
<type>(<scope>): <description>
示例:
feat(ble): add multi-touch gesture supportfix(mqtt): fix reconnection timeout issuedocs(api): update protocol documentation
- 提交 PR 后,维护者会进行代码审查
- 根据审查意见进行修改
- 通过审查后,维护者会合并代码
BlueHIDFlow 的发展离不开每一位贡献者的支持。无论你是修复 Bug、添加功能,还是改进文档,你的贡献都会让这个项目变得更好。