用途:帮助理解 OneKey 单仓库的架构与代码组织,适用于查看项目结构、包关系、导入规则或组件组织时参考。
平台结构:apps/desktop(Electron 桌面端,Windows/macOS/Linux)、apps/mobile(React Native 移动端,iOS/Android)、apps/ext(浏览器扩展,Chrome/Firefox/Edge/Brave)、apps/web(渐进式 Web 应用)、apps/web-embed(可嵌入钱包组件)。
核心包:packages/core(区块链协议、密码学、硬件钱包通信)、packages/kit(应用逻辑、状态管理、API 集成)、packages/kit-bg(后台服务与 worker)、packages/components(基于 Tamagui 的跨平台 UI 组件)、packages/shared(平台抽象、工具、构建配置)、packages/qr-wallet-sdk(气隙钱包二维码通信)。
架构模式:支持 40+ 区块链的可插拔多链实现;Tamagui 跨平台 UI;平台特定文件使用 .native.ts、.desktop.ts、.web.ts、.ext.ts 后缀;硬件钱包集成使用自定义 @onekeyfe/hd-* SDK;状态管理使用 Jotai。
导入层级规则(严格强制,违反会破坏构建并产生循环依赖):@onekeyhq/shared 禁止导入其他 OneKey 包;@onekeyhq/components 仅可导入 shared;@onekeyhq/kit-bg 仅可导入 shared 和 core;@onekeyhq/kit 可导入 shared、components、kit-bg;各 app 可导入所有包。添加导入前需验证层级、检查循环依赖,并运行 yarn tsc:only 验证。
修改前需做影响范围评估、模式一致性验证、架构完整性检查与性能影响评估;提交前检查导入层级、平台文件后缀、安全模式、错误处理、状态管理、UI 组件、翻译与测试模式。
限制:资料未提供安装命令、收费、价格或具体使用步骤。