2.3 KiB
2.3 KiB
TODO - Frontend / Desktop 开发计划
0. 基础约束
- 技术栈:Frontend = React + Vite + TS,Desktop = Electron
- Frontend/Desktop 子模块初始化
- 所有前端接口统一走 Guild/Center API(API Key 模型)
1. Frontend(Web)
1.1 应用骨架
- 路由骨架(登录页 / 工作台 / 聊天页)
- 全局布局(侧栏 + 主区 + 状态栏)
- API Client 封装(baseURL、API Key、错误处理)
- Socket 客户端封装(连接、重连、订阅/退订)
1.2 认证与会话
- 登录页(Center 登录)
- Access/Refresh token 管理
- 过期自动刷新与登出
- 基础路由守卫(未登录跳转)
1.3 Guild/Channel 浏览
- Guild 列表加载
- Channel 列表加载
- 频道切换与 URL 状态同步
1.4 消息主链路
- 消息拉取(分页/区间)
- 发送消息
- 编辑消息
- 删除消息
- 回补提示(next_expected_seq)
1.5 实时能力
- 实时消息(created/updated/deleted)
- typing/在线状态显示
- 断线重连与重拉策略
1.6 体验与稳定性
- 基础 loading/empty/error 态
- 关键页面可观测日志(requestId)
- 前端构建与 lint 门禁
2. Desktop(Electron)
2.1 桌面壳
- BrowserWindow 配置(尺寸、最小尺寸、标题)
- Dev/Prod 加载策略(devServer / 本地包)
- 应用菜单与快捷键基础
2.2 安全基线
- contextIsolation 保持开启
- preload + IPC 白名单(最小暴露)
- 禁止任意导航/新窗口策略
2.3 桌面能力
- 本地配置存储(API Base/API Key)
- 系统通知(新消息)
- 托盘与最小化到托盘(可选)
2.4 打包发布
- 打包配置(Linux/macOS/Windows)
- 版本号与产物命名规范
- 一键构建命令与发布说明
3. 联调与验收
- 与 Center/Guild 联调通过(登录、发消息、实时)
- 关键链路冒烟(Web + Desktop)
- MVP DoD 文档更新
4. 推荐执行顺序
- Frontend 1.1 应用骨架
- Frontend 1.2 认证与会话
- Frontend 1.3/1.4 核心聊天
- Frontend 1.5 实时完善
- Desktop 2.1/2.2 安全壳
- Desktop 2.3 桌面增强
- Desktop 2.4 打包发布
- 联调验收