HarmonyKit | 鸿蒙开发协作:如何为 HarmonyKit 贡献一个新的工具 HarmonyKit | 鸿蒙开发协作如何为 HarmonyKit 贡献一个新的工具引言从使用者到贡献者HarmonyKit 的架构设计原则之一是零破坏性扩展——新增一个工具不应该修改任何现有工具的代码。这意味着贡献一个新工具的门槛极低看懂 ToolItem 接口、选择一个页面模板、实现核心逻辑。整个过程 10 分钟。这篇文章是写给想为 HarmonyKit 贡献代码的开发者的完整指南——从 Fork 仓库到提交 Pull Request。项目仓库https://atomgit.com/VON-/harmony-kit四步标准流程第一步数据注册在model/ToolItem.ets的TOOL_LIST数组中追加一个对象{id:newtool,// 唯一标识用于路由匹配name:新工具名称,// 卡片显示名称4-7个字description:一句话描述,// 卡片描述8-20个字icon:NT,// 等宽字体短文本1-3字符color:#xxxxxx,// 主题色不与已有颜色重复category:计算,// 格式化/编解码/计算/文本routerPath:pages/tools/NewTool}id是整个应用的唯一标识——用于 Tab 筛选和路由匹配。color参考已有 10 个工具的配色体系相邻工具在色环上拉开至少 60 度。第二步创建页面文件在pages/tools/下创建NewTool.ets。从相似的工具页面复制骨架输入型工具Base64、URL、哈希→ 复制 Base64Tool.ets计算型工具时间戳、进制、颜色→ 复制 RadixConverter.ets文本型工具正则、统计→ 复制 RegexTester.ets骨架包含Header返回标题、Scroll包裹、输入区、操作按钮、输出区CopyButton。替换核心处理逻辑即可。第三步实现核心逻辑简单逻辑10行直接写在页面方法中。复杂逻辑10行在utils/NewToolUtils.ets中创建静态工具类——保持 utils 的纯函数约束。第四步注册路由在main_pages.json中添加页面路径。代码规范输出区域必须有 CopyButton错误信息展示在操作区和输出区之间主题色不与已有工具重复所有方法统一使用this.getUIContext().getRouter()而非全局 routerPR 流程Fork → 创建feat/new-tool分支 → 提交 → Pull Request。PR 描述包含工具的用途和核心算法概要。项目仓库https://atomgit.com/VON-/harmony-kit