Repository navigation
Commit 12ebc81
docs: 添加软件开发说明书(白皮书) (#13)
* docs: 完成软件开发说明书(白皮书)
包含以下内容:
- 第一篇:产品篇(产品愿景、用户画像、用户故事)
- 第二篇:设计篇(交互设计、视觉设计、设计原则)
- 第三篇:架构篇(技术选型、系统架构、导航系统、状态管理)
- 第四篇:服务篇(服务架构、链服务接口、平台服务、事件系统)
- 第五篇:组件篇(组件体系、表单系统、组件开发规范)
- 第六篇:安全篇(密钥管理、身份认证、DWEB授权)
- 第七篇:国际化篇(多语言支持、本地化规范)
- 第八篇:测试篇(测试策略、Vitest配置、Playwright配置)
- 第九篇:部署篇(构建配置、发布流程)
- 附录(术语表、链网络列表、mpay迁移指南、API参考)
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* docs: 配置 VitePress 白皮书侧边栏和导航
- 添加 /white-book/ 多侧边栏配置
- 前三篇默认展开,后续章节默认折叠
- 顶部导航添加「开发说明书」入口
- 主侧边栏添加白皮书链接
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* feat(docs): 自动生成白皮书侧边栏
- 添加 sidebar-white-book.ts 脚本自动扫描目录生成侧边栏
- 根据目录名 XX-名称 自动排序和命名
- 前3篇默认展开,其余折叠
- 添加附录/index.md 修复死链接
- 简化 config.ts,移除硬编码侧边栏
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* refactor(docs): 重构为抽象规范文档
将实现指南改为技术无关的规范文档:
组件篇:
- 组件规范:使用状态机定义组件行为
- 表单规范:定义验证规则和状态转换
- 交互规范:触摸、手势、动效、可访问性
架构篇:
- 技术选型 → 技术需求:定义能力需求而非具体技术
服务篇:
- 服务架构:适配器模式的抽象定义
- 链服务接口:移除实现代码,保留接口规范
- 平台服务:跨平台能力的抽象接口
目标:让 AI 根据规范可以用任意技术栈实现产品
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* feat(docs): 组件篇拆分为独立组件文件
新目录结构:
- 01-基础组件/:Button, Input, Card, Sheet, Dialog, Toast
- 02-通用组件/:AddressDisplay, AmountDisplay, TokenIcon, QRCode
- 03-钱包组件/:WalletCard, ChainSelector, TransactionItem
- 04-布局组件/:AppLayout, TabBar, Header
- 05-表单系统/:表单状态机、验证规范
- 06-交互规范/:触摸、手势、动效、可访问性
每个组件都有独立的规范文件,包含:
- 属性规范
- 状态机定义
- 行为规范 (MUST/SHOULD/MAY)
- 布局规范
- 设计标注
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* feat(docs): 拆分服务篇为独立服务接口文件
- 链服务: IIdentityService, IAssetService, ITransactionService, IChainService, IStakingService
- 平台服务: IBiometricService, IStorageService, ICameraService, IDeepLinkService
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* feat(docs): 添加平台服务接口 IClipboardService, IShareService, IHapticService
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* refactor(docs): 重构所有章节为抽象规范文档
- 架构篇: 系统架构、导航系统、状态管理
- 服务篇: 事件系统
- 安全篇: 密钥管理、身份认证
- 国际化篇: 多语言支持
- 测试篇: 单元测试规范
- 部署篇: 构建配置
移除所有具体代码实现,保留 MUST/SHOULD/MAY 规范
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* fix(docs): 修复死链接 - 更新链服务目录引用
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* feat(docs): 白皮书重大扩展 - 新增 5 篇章节和 6 个附录
新增章节:
- 10-离线能力篇: 离线检测、缓存策略、离线签名、数据同步
- 11-错误处理篇: 错误码目录、恢复策略、UI规范、日志上报
- 12-性能预算篇: 加载指标、操作预算、包体积、内存限制
- 13-数据迁移篇: 版本化存储、迁移策略、向后兼容
- 14-监控告警篇: 埋点规范、性能监控、错误上报、告警规则
增强章节:
- 06-安全篇: 新增安全审计清单、攻击防护规范
- 08-测试篇: 新增性能测试和安全测试规范
新增附录:
- E-状态机规范: 转账、创建钱包、授权、应用锁等状态机
- F-边界条件目录: 各功能边界条件和处理方式
- G-网络故障矩阵: 故障场景检测和处理策略
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
* refactor(docs): 重新组织章节结构
将独立章节归入现有篇章:
- 03-架构篇: +05-离线能力, +06-错误处理, +07-性能预算
- 09-部署篇: +03-数据迁移, +04-监控告警
保持9篇+附录的整体结构
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
---------
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>1 parent 1e11651 commit 12ebc81
87 files changed
Lines changed: 16708 additions & 0 deletions
File tree
- docs
- .vitepress
- white-book
- 01-产品篇
- 01-产品愿景
- 02-用户画像
- 03-用户故事
- 02-设计篇
- 01-交互设计
- 02-视觉设计
- 03-设计原则
- 03-架构篇
- 01-技术选型
- 02-系统架构
- 03-导航系统
- 04-状态管理
- 05-离线能力
- 06-错误处理
- 07-性能预算
- 04-服务篇
- 01-服务架构
- 02-链服务
- 03-平台服务
- 04-事件系统
- 05-组件篇
- 01-基础组件
- 02-通用组件
- 03-钱包组件
- 04-布局组件
- 05-表单系统
- 06-交互规范
- 06-安全篇
- 01-密钥管理
- 02-身份认证
- 03-DWEB授权
- 04-安全审计清单
- 07-国际化篇
- 01-多语言支持
- 02-本地化规范
- 08-测试篇
- 01-测试策略
- 02-Vitest配置
- 03-Playwright配置
- 04-性能测试
- 05-安全测试
- 09-部署篇
- 01-构建配置
- 02-发布流程
- 03-数据迁移
- 04-监控告警
- 附录
- A-术语表
- B-链网络列表
- C-mpay迁移指南
- D-API参考
- E-状态机规范
- F-边界条件目录
- G-网络故障矩阵
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
3 | 4 | | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
7 | 11 | | |
8 | 12 | | |
9 | 13 | | |
| |||
33 | 37 | | |
34 | 38 | | |
35 | 39 | | |
| 40 | + | |
36 | 41 | | |
37 | 42 | | |
38 | 43 | | |
39 | 44 | | |
40 | 45 | | |
41 | 46 | | |
| 47 | + | |
42 | 48 | | |
43 | 49 | | |
44 | 50 | | |
| |||
52 | 58 | | |
53 | 59 | | |
54 | 60 | | |
| 61 | + | |
55 | 62 | | |
56 | 63 | | |
57 | 64 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
35 | 40 | | |
36 | 41 | | |
37 | 42 | | |
| |||
48 | 53 | | |
49 | 54 | | |
50 | 55 | | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
0 commit comments