Skip to content

Commit 2435666

Browse files
committed
feat: 桌面端从 Tauri 迁移至 Electron,v0.3.0 全功能重构
桌面端迁移: - 移除 Tauri(Rust 后端、Cargo 配置、所有原生图标资源) - 新增 Electron 主进程(main.ts)与预加载脚本(preload.ts) - 新增 electron-builder.yml 构建配置(NSIS 安装包) - 新增 ElectronAIPlugin 替代 TauriAIPlugin - 删除临时文件(GLM5.2.md、deepseek.md) 核心功能重构: - 番茄钟:新增目标输入、目标记忆组件,重构持久化与统计逻辑 - 智能笔记:新增康奈尔布局、自由画布、自由文本块组件 - 闪卡:重构牌组详情、列表页与会话存储 - 费曼学习法:重构状态管理与测试 - 仪表盘:新增成就面板组件 基础设施: - 新增成就系统(definitions、evaluator) - 新增音频播放模块(audioConfig、useAudioPlayer) - 新增打卡系统(useCheckIn Hook) - 新增侧边栏状态管理(useSidebarStore) - 新增 Electron 类型声明(electron.d.ts) - 新增 AI 插件加载器测试与配置模块 - 重构存储层、同步引擎、网络管理器、离线队列 - 新增 UI 组件:ContextMenu、RichTooltip - 更新样式令牌与主题系统 - 更新 .gitignore(排除 dist-electron、client/release、brainstorm 文件)
1 parent 73164ca commit 2435666

135 files changed

Lines changed: 10587 additions & 20850 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.gitignore‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ build/
1212
*.pdb
1313
*.dll
1414
client/src-tauri/target/
15+
dist-electron/
16+
client/release/
1517

1618
# IDE
1719
.vscode/
@@ -34,6 +36,8 @@ Thumbs.db
3436

3537
# Documentation (local only, not version controlled)
3638
docs/
39+
brainstorm*.md
40+
ui_brainstorm.md
3741

3842
# Logs
3943
*.log

‎GLM5.2.md‎

Lines changed: 0 additions & 209 deletions
This file was deleted.

‎README.md‎

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<img src="https://img.shields.io/badge/build-passing-brightgreen.svg" alt="Build" />
88
<img src="https://img.shields.io/badge/license-Private-lightgrey.svg" alt="License" />
99
<img src="https://img.shields.io/badge/React-18-61dafb.svg" alt="React" />
10-
<img src="https://img.shields.io/badge/Tauri-2.0-ffc5c5.svg" alt="Tauri" />
10+
<img src="https://img.shields.io/badge/Electron-28-47848F.svg" alt="Electron" />
1111
</p>
1212
</p>
1313

@@ -75,7 +75,7 @@
7575
|------|------|------|
7676
| UI 框架 | React 18 + TypeScript | 类型安全的组件化开发 |
7777
| 构建工具 | Vite 8 | 极速 HMR 与构建 |
78-
| 桌面端 | Tauri 2.0 | 轻量级跨平台桌面应用(5–15 MB 安装包) |
78+
| 桌面端 | Electron | 跨平台桌面应用(Electron + PWA 双模式) |
7979
| 样式方案 | Tailwind CSS 3.4 | 原子化 CSS + Design Tokens |
8080
| 状态管理 | Zustand + TanStack Query | 本地状态 + 异步数据缓存 |
8181
| 本地存储 | Dexie.js (IndexedDB) | 本地优先数据存储 |
@@ -84,7 +84,7 @@
8484
| 路由 | React Router 7 | SPA 路由管理 |
8585
| 图标 | Lucide React | 线性风格图标库 |
8686
| 测试 | Vitest + Testing Library | 单元与组件测试 |
87-
| 代码检查 | Oxlint | 高性能 Rust Linter |
87+
| 代码检查 | Oxlint | 高性能 JS/TS Linter |
8888

8989
### 后端服务
9090

@@ -110,7 +110,7 @@
110110

111111
```
112112
KeBan/
113-
├── client/ # 🖥️ 前端客户端(React + Tauri)
113+
├── client/ # 🖥️ 前端客户端(React + Electron)
114114
│ ├── src/
115115
│ │ ├── features/ # 📦 业务功能模块
116116
│ │ │ ├── dashboard/ # 仪表盘 & 学习概览
@@ -134,7 +134,8 @@ KeBan/
134134
│ │ ├── store/ # 🗄️ Zustand 全局状态
135135
│ │ ├── styles/ # 🎨 全局样式 & Design Tokens
136136
│ │ └── types/ # 📐 TypeScript 类型定义
137-
│ ├── src-tauri/ # 🦀 Tauri Rust 后端
137+
│ ├── electron/ # ⚡ Electron 主进程与预加载脚本
138+
│ ├── src-tauri/ # ⚠️ 遗留目录,待删除
138139
│ └── package.json
139140
├── server/ # ⚙️ 后端服务
140141
│ ├── sync-service/ # Go 数据同步服务(:8080)
@@ -158,7 +159,7 @@ KeBan/
158159

159160
```
160161
┌──────────────────────────────────────────────────────┐
161-
│ 课伴桌面端 (Tauri 2.0) │
162+
│ 课伴桌面端 (Electron) │
162163
│ ┌────────────────────────────────────────────────┐ │
163164
│ │ React 前端 (Vite + TypeScript) │ │
164165
│ │ │ │
@@ -191,7 +192,7 @@ KeBan/
191192
| 阶段 | 状态 | 核心交付 |
192193
|------|------|----------|
193194
| **MVP-1 Alpha** | ✅ 已完成 | 纯本地核心版 — 四大模块 + PWA 离线 + 本地存储 |
194-
| **MVP-2 Alpha** | 🔧 进行中 | AI 增强 + 云同步 + Tauri 桌面端 + 用户认证 |
195+
| **MVP-2 Alpha** | 🔧 进行中 | AI 增强 + 云同步 + Electron 桌面端 + 用户认证 |
195196
| **Beta 公测** | 📋 规划中 | 全功能集成,面向真实用户测试 |
196197
| **正式上线** | 🎯 规划中 | 生产就绪版 |
197198

@@ -247,17 +248,16 @@ git push origin v0.2.0
247248

248249
> ⚠️ 发布 Tag 前请确保:所有测试通过(`npm run test`)、构建成功(`npm run build`)、关键功能手动验证完毕。
249250
250-
### Tauri 安装包构建
251+
### Electron 安装包构建
251252

252-
桌面端安装包通过 Tauri CLI 构建:
253+
桌面端安装包通过 Electron Builder 构建:
253254

254255
```bash
255256
cd client
256-
npm run build # 前端生产构建
257-
npx tauri build # 生成 NSIS 安装包
257+
npm run electron:build # 前端生产构建 + Electron 打包
258258
```
259259

260-
- 产物路径:`client/src-tauri/target/release/bundle/nsis/`
260+
- 产物路径:`client/release/`
261261
- 安装包格式:Windows NSIS(`.exe`),支持简体中文 / English
262262
- 安装模式:当前用户安装(`currentUser`),无需管理员权限
263263

@@ -298,7 +298,7 @@ docs(phase3): 补充 API 设计规范文档
298298

299299
| 工具 | 用途 | 命令 |
300300
|------|------|------|
301-
| Oxlint | 高性能 Rust Linter | `npm run lint` |
301+
| Oxlint | 高性能 JS/TS Linter | `npm run lint` |
302302
| Vitest | 单元与组件测试 | `npm run test` |
303303
| TypeScript | 静态类型检查 | `npm run build`(含 `tsc -b`) |
304304

‎client/electron-builder.yml‎

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Electron Builder 打包配置 - 课伴桌面端
2+
appId: com.keban.app
3+
productName: "课伴"
4+
directories:
5+
output: release
6+
buildResources: build
7+
files:
8+
- dist/**/*
9+
- dist-electron/**/*
10+
win:
11+
target:
12+
- target: nsis
13+
arch:
14+
- x64
15+
icon: build/icon.ico
16+
nsis:
17+
oneClick: false
18+
allowToChangeInstallationDirectory: true
19+
installerIcon: build/icon.ico
20+
uninstallerIcon: build/icon.ico
21+
installerHeaderIcon: build/icon.ico
22+
createDesktopShortcut: true
23+
shortcutName: "课伴"
24+
perMachine: false
25+
language: "2052"

0 commit comments

Comments
 (0)