feat: 创建Desktop客户端开发计划

- 制定3阶段开发计划
- 定义技术方案和成功指标
- 建立风险控制策略
- 规划版本管理和时间计划
This commit is contained in:
Kris Ka
2025-09-22 16:39:50 +08:00
parent dbdfbc1733
commit 2b7b1beaf9

203
DESKTOP_DEVELOPMENT_PLAN.md Normal file
View File

@@ -0,0 +1,203 @@
# AutoClip Desktop 客户端开发计划
## 📋 项目概述
**目标**: 开发一个跨平台的桌面客户端,实现一键安装-启动-使用的用户体验
**技术方案**:
- 后端: Celery SQLite Transport (Desktop模式)
- 前端: Tauri 壳 + 内嵌 WebView
- 平台: Windows + macOS
## 🎯 开发阶段
### 阶段1: 基础改造 (2周)
**目标**: 建立Desktop模式的基础架构
#### 后端任务
- [ ] 创建 Desktop Profile 配置
- [ ] `.env.desktop` 配置文件
- [ ] `settings.desktop.json` 默认设置
- [ ] Pydantic 配置验证
- [ ] Celery SQLite Transport 配置
- [ ] 切换到 SQLite Broker
- [ ] 配置 SQLite Backend
- [ ] 设置默认并发度为1-2
- [ ] 健康检查端点
- [ ] `/health` 端点实现
- [ ] 服务状态监控
- [ ] 优雅关闭机制
#### 前端任务
- [ ] 首次运行向导页面
- [ ] 硬件检测界面
- [ ] 模型下载选项
- [ ] 示例项目创建
- [ ] 任务中心 v1
- [ ] 任务进度显示
- [ ] 错误提示界面
- [ ] 重试/取消操作
#### 打包任务
- [ ] PyInstaller 后端打包
- [ ] 包含 ffmpeg 依赖
- [ ] 包含必要 Python 包
- [ ] 优化启动时间
- [ ] Tauri 基础框架
- [ ] 项目初始化
- [ ] 静态资源打包
- [ ] 最小窗口 demo
### 阶段2: 壳与托盘 (2周)
**目标**: 完成桌面应用的核心功能
#### Tauri 任务
- [ ] 内嵌 WebView 展示
- [ ] 前端 UI 集成
- [ ] 跨平台兼容性
- [ ] 窗口管理
- [ ] 托盘菜单功能
- [ ] 启动/停止服务
- [ ] 打开 UI 界面
- [ ] 查看日志
- [ ] 导出诊断包
#### 后端任务
- [ ] 日志导出功能
- [ ] 日志文件收集
- [ ] 诊断包生成
- [ ] 错误信息汇总
#### 打包任务
- [ ] macOS 打包
- [ ] DMG 安装包
- [ ] 代码签名
- [ ] 公证流程
- [ ] Windows 打包
- [ ] EXE/MSIX 安装包
- [ ] 代码签名
- [ ] 安装向导
#### 测试任务
- [ ] 跨平台冒烟测试
- [ ] macOS 测试
- [ ] Windows 测试
- [ ] 示例项目成功率 >95%
### 阶段3: 体验优化 (1-2周)
**目标**: 提升用户体验和稳定性
#### 前端任务
- [ ] 错误中心 v1
- [ ] 友好错误文案
- [ ] 日志查看按钮
- [ ] 错误恢复建议
- [ ] 设置页面重构
- [ ] 分组配置显示
- [ ] 默认折叠高级项
- [ ] 配置验证提示
#### 后端任务
- [ ] 示例项目优化
- [ ] 一键执行流程
- [ ] 保证成功率
- [ ] 错误处理完善
#### 文档任务
- [ ] 极简上手指南
- [ ] 1页图文说明
- [ ] 视频演示
- [ ] 常见问题解答
## 📊 成功指标
### 技术指标
- 安装成功率: >95%
- 首次成功率: >90%
- 运行稳定性: 崩溃率 <1%
- 任务成功率: >98%
### 用户体验指标
- 用户可自愈率: >80%
- 支持成本下降: >50%
- 用户满意度: >4.5/5
## ⚠️ 风险控制
### 技术风险
- SQLite 并发限制: 默认并发度设为1
- Tauri 版本兼容: 锁定版本避免自动更新
- 跨平台路径: 统一使用 Path 库处理
### 用户体验风险
- 首次启动慢: 添加启动动画和进度提示
- 端口冲突: 实现端口自动检测和回退
- 权限问题: 提供权限申请引导
## 🚀 开发环境准备
### 必需工具
- [ ] Python 3.11+
- [ ] Node.js 18+
- [ ] Rust 1.70+
- [ ] Tauri CLI
- [ ] PyInstaller
- [ ] 代码签名证书
### 开发环境
- [ ] macOS 开发环境
- [ ] Windows 开发环境
- [ ] 测试虚拟机
## 📝 版本管理
### 分支策略
```
main (生产稳定版)
├── develop (开发集成分支)
├── feature/desktop-client (当前分支)
├── feature/smart-cover-generation-backup (智能封面备份)
└── hotfix/* (紧急修复)
```
### 版本标签
- v1.0.0-dev-1: 阶段1完成
- v1.0.0-dev-2: 阶段2完成
- v1.0.0-beta: 阶段3完成
- v1.0.0: 正式发布
## 📅 时间计划
| 阶段 | 时间 | 主要任务 | 交付物 |
|------|------|----------|--------|
| 阶段1 | 2周 | 基础改造 | Desktop配置 + Tauri框架 |
| 阶段2 | 2周 | 壳与托盘 | 完整桌面应用 |
| 阶段3 | 1-2周 | 体验优化 | 正式发布版本 |
**总预计时间**: 5-6周
## 🔄 下一步行动
### 立即开始
1. 创建 Desktop 配置文件
2. 配置 Celery SQLite Transport
3. 初始化 Tauri 项目
4. 搭建基础开发环境
### 本周目标
- 完成阶段1的基础架构
- 实现基本的打包流程
- 建立开发测试环境
---
**创建时间**: 2024年12月
**当前状态**: 开发中
**负责人**: 开发团队