1fa17f7c9d6d4131d60928acab27f541206bc917
XCDesktop
✨ 核心特性
- 🤖 AI 集成 - 深度集成通义万相、豆包等 AI 能力,支持语音转文字、视频解析、PPT 提取等
- 📝 Markdown 笔记管理 - 基于 Milkdown 编辑器,支持数学公式(KaTeX)、代码高亮(Prism)、表格、任务列表等
- ⏱️ 时间追踪 - 记录学习和工作时间,生成生产力统计图表
- ✅ 任务管理 - 完善的 TODO 功能,支持时间规划和任务统计
- 🗂️ 文件管理 - 树形文件结构,支持拖拽、重命名、删除等操作
- 🔍 全文搜索 - 快速搜索笔记内容
- 🌐 远程网页 - 内置浏览器,集成微信读书、B 站等常用网站
- 🧩 模块化架构 - 前端模块热插拔,易于扩展新功能
- 🖥️ 桌面原生体验 - Electron 打包,离线可用,支持系统主题
🚀 快速开始
环境要求
- Node.js 18+
- npm 9+
- Windows 10+
安装依赖
npm install
运行开发模式
# 启动前端开发服务器
npm run dev
# 或者使用 Electron 开发模式(推荐)
npm run electron:dev
构建项目
# 构建前端
npm run build
# 构建 Electron 应用
npm run electron:build
构建完成后,安装包位于 release 目录下。
📁 项目结构
XCDesktop/
├── src/ # 前端源代码
│ ├── components/ # React 组件
│ ├── contexts/ # React Context
│ ├── hooks/ # 自定义 Hooks
│ │ ├── domain/ # 业务逻辑 Hooks
│ │ ├── events/ # 事件处理
│ │ ├── ui/ # UI 交互 Hooks
│ │ └── utils/ # 工具函数
│ ├── lib/ # 工具库
│ │ ├── api/ # API 客户端
│ │ ├── editor/ # 编辑器配置
│ │ └── utils/ # 工具函数
│ ├── modules/ # 功能模块
│ │ ├── home/ # 首页
│ │ ├── settings/ # 设置
│ │ ├── search/ # 搜索
│ │ ├── todo/ # 任务管理
│ │ ├── time-tracking/ # 时间追踪
│ │ ├── recycle-bin/ # 回收站
│ │ ├── pydemos/ # Python Demo
│ │ ├── weread/ # 微信读书
│ │ └── remote/ # 远程网页
│ ├── stores/ # Zustand 状态管理
│ └── types/ # 类型定义
├── api/ # 后端 API (Express)
│ ├── config/ # 配置文件
│ ├── core/ # 核心功能
│ ├── errors/ # 错误处理
│ ├── modules/ # API 模块
│ │ ├── ai/ # AI 集成
│ │ ├── document-parser/ # 文档解析
│ │ ├── pydemos/ # Python Demo
│ │ ├── recycle-bin/ # 回收站
│ │ ├── remote/ # 远程网页
│ │ ├── time-tracking/ # 时间追踪
│ │ └── todo/ # 任务管理
│ ├── middlewares/ # 中间件
│ ├── schemas/ # 数据验证
│ ├── utils/ # 工具函数
│ ├── watcher/ # 文件监控
│ └── events/ # 事件总线
├── electron/ # Electron 主进程
├── shared/ # 共享类型和配置
├── tools/ # 工具脚本
│ └── tongyi/ # 通义万相 AI 工具
├── notebook/ # 笔记数据存储(运行时)
└── release/ # 构建输出
🧩 功能模块
核心模块
| 模块 | 功能描述 |
|---|---|
| 首页 | 欢迎页面,快速访问常用功能 |
| 文件管理 | 树形目录结构,管理 Markdown 笔记 |
| 编辑器 | 基于 Milkdown 的 Markdown 编辑器 |
| 搜索 | 全文搜索笔记内容 |
| 设置 | 主题、壁纸、字体大小等个性化配置 |
扩展模块
| 模块 | 功能描述 |
|---|---|
| AI 集成 | 通义万相语音转文字、视频解析、PPT 提取等 |
| 文档解析 | 支持导入博客、PDF 等格式 |
| 时间追踪 | 记录工作/学习时间,统计生产力 |
| 任务管理 | TODO 列表,支持时间规划 |
| 回收站 | 误删恢复 |
| Python Demo | Python 脚本管理 |
| 微信读书 | 微信读书网页版集成 |
| 远程网页 | 内置浏览器,访问任意网页 |
🛠️ 技术栈
前端
- 框架: React 18 + TypeScript
- 构建工具: Vite 6
- 样式: Tailwind CSS + Tailwind Typography
- 编辑器: Milkdown (Markdown)
- 图表: Recharts
- 图标: Lucide React
- 路由: React Router DOM
- 状态管理: Zustand
- 拖拽: @dnd-kit
后端
- 运行时: Node.js
- 框架: Express
- 验证: Zod
- 文件监控: Chokidar
桌面
- 框架: Electron 40
- 日志: electron-log
AI 工具
- 语音识别: 通义听悟
- 视频解析: Bilibili 视频下载与分析
- PPT 提取: 自动提取 PPT 内容
📝 数据存储
数据文件存储在系统文档目录下的 XCDesktop 文件夹中:
~/Documents/XCDesktop/
├── notebook/
│ ├── markdowns/ # Markdown 笔记
│ ├── pydemos/ # Python Demo
│ ├── images/ # 图片资源
│ └── time/ # 时间追踪数据
└── downloads/ # 下载文件
🤝 贡献指南
欢迎提交 Issue 和 Pull Request!请先阅读 CONTRIBUTING.md。
📄 许可证
MIT License
Description
Languages
TypeScript
75.8%
JavaScript
15%
Python
7.3%
CSS
1.3%
HTML
0.6%