重构: App拆分10域文件+并发安全+结构化日志+依赖升级
This commit is contained in:
@@ -4,52 +4,57 @@
|
||||
|
||||
## 功能
|
||||
|
||||
- 文件浏览 / 编辑 / 预览(文本、Markdown、图片、Office、PDF)
|
||||
- 收藏夹管理(折叠/展开、拖拽排序、置顶)
|
||||
- Markdown 编辑器(实时预览、语法高亮、Mermaid 图表)
|
||||
- 远程文件服务器连接
|
||||
- 主题切换(亮色/暗色)
|
||||
- 版本更新检查
|
||||
- **本地文件管理**: 浏览、编辑、重命名、删除、回收站
|
||||
- **SFTP 远程连接**: SSH 密钥/密码认证,文件上传下载
|
||||
- **云 OSS 存储**: 七牛云/阿里云,多桶浏览
|
||||
- **多格式预览**: 图片/视频/音频/PDF/Office/HTML
|
||||
- **Markdown 编辑器**: 实时预览、Mermaid 图表、语法高亮
|
||||
- **收藏夹管理**: 折叠/展开、拖拽排序、置顶
|
||||
- **BGM 播放**: 音频播放列表、全局热键 Ctrl+Shift+B
|
||||
- **PDF 导出**: Markdown/HTML 导出为 PDF
|
||||
- **版本更新检查**: 自动检测新版本
|
||||
- **主题切换**: 亮色/暗色
|
||||
|
||||
## 技术栈
|
||||
|
||||
| 层 | 技术 |
|
||||
|---|------|
|
||||
| 桌面框架 | Wails v3 (alpha.80) |
|
||||
| 后端 | Go 1.22+ |
|
||||
| 桌面框架 | Wails v3 (alpha.82) |
|
||||
| 后端 | Go 1.24 |
|
||||
| 前端 | Vue 3 + TypeScript |
|
||||
| UI 组件库 | Arco Design Vue |
|
||||
| 编辑器 | CodeMirror 6 |
|
||||
| 构建 | Vite 7 + Taskfile |
|
||||
| 数据库 | SQLite (配置/历史) |
|
||||
| 文件服务 | 内置 HTTP 文件服务器 (端口 2652) |
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
├── main.go # 入口:窗口配置、中间件、DevTools
|
||||
├── app.go # 应用逻辑:文件系统、更新检查等
|
||||
├── internal/ # 内部模块
|
||||
│ ├── filesystem/ # 文件操作、锁、预览服务
|
||||
│ └── api/ # API 处理器
|
||||
├── frontend/ # 前端代码 (Vue 3)
|
||||
│ ├── src/
|
||||
│ │ ├── components/FileSystem/ # 文件管理主组件
|
||||
│ │ ├── stores/ # Pinia 状态管理
|
||||
│ │ ├── api/ # 后端调用封装
|
||||
│ │ └── utils/ # 工具函数
|
||||
│ └── vite.config.js
|
||||
├── main.go # 入口:窗口配置、中间件
|
||||
├── app.go # App 结构体定义、生命周期、请求类型
|
||||
├── app_*.go # 按功能域拆分(config/sftp/oss/...)
|
||||
├── internal/
|
||||
│ ├── api/ # Wails 绑定 API 层
|
||||
│ ├── filesystem/ # 文件系统服务 + HTTP 文件服务器
|
||||
│ ├── ossdrv/ # OSS 驱动(七牛/阿里云)
|
||||
│ ├── sftp/ # SFTP 客户端
|
||||
│ ├── storage/ # SQLite 存储
|
||||
│ └── service/ # 业务服务
|
||||
├── frontend/
|
||||
│ └── src/
|
||||
│ ├── components/FileSystem/ # 文件管理主组件
|
||||
│ ├── api/ # 后端调用封装
|
||||
│ ├── composables/ # Vue Composables
|
||||
│ └── stores/ # Pinia 状态管理
|
||||
├── build/ # 构建配置(跨平台)
|
||||
│ ├── config.yml # Wails 项目配置
|
||||
│ └── windows/ # Windows 构建脚本
|
||||
└── configs/ # 运行时配置
|
||||
```
|
||||
|
||||
## 开发
|
||||
|
||||
```bash
|
||||
# 安装依赖
|
||||
wails3 task common:install:frontend:deps
|
||||
|
||||
# 启动开发模式(热重载)
|
||||
# 启动开发模式
|
||||
wails3 dev
|
||||
|
||||
# 生产构建
|
||||
@@ -59,16 +64,16 @@ wails3 build
|
||||
### 构建标签
|
||||
|
||||
- `production` — 生产模式,使用嵌入的 frontend dist
|
||||
- `devtools` — 在生产构建中保留 DevTools(F12)
|
||||
- `devtools` — 在生产构建中保留 DevTools
|
||||
|
||||
## 快捷键
|
||||
|
||||
| 快捷键 | 功能 |
|
||||
|--------|------|
|
||||
| Ctrl+B | 切换侧边栏 |
|
||||
| Ctrl+H | 历史记录 |
|
||||
| Ctrl+F | 聚焦搜索 |
|
||||
| Ctrl+Shift+B | BGM 播放栏 |
|
||||
| F11 | 全屏预览 |
|
||||
|
||||
## 版本历史
|
||||
|
||||
详见 [CHANGELOG.md](./CHANGELOG.md)
|
||||
详见 [CHANGELOG.md](./CHANGELOG.md) | 内部技术细节见 [CHANGELOG.internal.md](./CHANGELOG.internal.md)
|
||||
|
||||
Reference in New Issue
Block a user