# U-Desk

桌面文件管理器，基于 [Wails v3](https://v3.wails.io/) (Go + Vue 3)。

## 功能

- 文件浏览 / 编辑 / 预览（文本、Markdown、图片、Office、PDF）
- 收藏夹管理（折叠/展开、拖拽排序、置顶）
- Markdown 编辑器（实时预览、语法高亮、Mermaid 图表）
- 远程文件服务器连接
- 主题切换（亮色/暗色）
- 版本更新检查

## 技术栈

| 层 | 技术 |
|---|------|
| 桌面框架 | Wails v3 (alpha.80) |
| 后端 | Go 1.22+ |
| 前端 | Vue 3 + TypeScript |
| UI 组件库 | Arco Design Vue |
| 编辑器 | CodeMirror 6 |
| 构建 | Vite 7 + Taskfile |

## 项目结构

```
├── main.go              # 入口：窗口配置、中间件、DevTools
├── app.go               # 应用逻辑：文件系统、更新检查等
├── internal/            # 内部模块
│   ├── filesystem/      # 文件操作、锁、预览服务
│   └── api/             # API 处理器
├── frontend/            # 前端代码 (Vue 3)
│   ├── src/
│   │   ├── components/FileSystem/   # 文件管理主组件
│   │   ├── stores/                  # Pinia 状态管理
│   │   ├── api/                     # 后端调用封装
│   │   └── utils/                   # 工具函数
│   └── vite.config.js
├── build/               # 构建配置（跨平台）
│   ├── config.yml       # Wails 项目配置
│   └── windows/         # Windows 构建脚本
└── configs/             # 运行时配置
```

## 开发

```bash
# 安装依赖
wails3 task common:install:frontend:deps

# 启动开发模式（热重载）
wails3 dev

# 生产构建
wails3 build
```

### 构建标签

- `production` — 生产模式，使用嵌入的 frontend dist
- `devtools` — 在生产构建中保留 DevTools（F12）

## 快捷键

| 快捷键 | 功能 |
|--------|------|
| Ctrl+B | 切换侧边栏 |
| Ctrl+H | 历史记录 |
| Ctrl+F | 聚焦搜索 |

## 版本历史

详见 [CHANGELOG.md](./CHANGELOG.md)
