# notebook-test **Repository Path**: ustcylw/notebook-test ## Basic Information - **Project Name**: notebook-test - **Description**: 测试notebook - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-09 - **Last Updated**: 2026-07-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 个人笔记客户端 基于 Electron + Gitee + AI 的个人笔记桌面应用。支持 Markdown 和 HTML 两种格式,集成 AI 助手辅助编辑,笔记通过 Gitee Git 仓库同步。 ## 功能特性 - **三栏布局**:文件树导航 + Vditor 编辑器 + AI 助手 - **双格式支持**:Markdown(.md)和 HTML(.html)笔记 - **Git 同步**:支持 Gitee 仓库导入、手动同步、定时同步 - **AI 助手**:兼容 LM Studio / Ollama / DeepSeek API,混合模式(追加/替换) - **冲突处理**:弹窗显示差异对比,用户选择保留本地或远程 - **快捷键**:Ctrl+S 保存、Ctrl+Z 撤销、Ctrl+Y 重做、Ctrl+N 新建等 - **系统主题**:跟随系统深色/浅色主题 - **文件管理**:新建/重命名/删除笔记和文件夹,右键菜单操作 ## 技术栈 | 类别 | 技术 | 版本 | |------|------|------| | 框架 | Electron | ^33.0.0 | | 构建 | Vite | ^6.0.0 | | 编辑器 | Vditor | ^1.9.0 | | Markdown | marked | ^14.0.0 | | Git | simple-git | ^3.23.0 | | 打包 | electron-builder | ^25.0.0 | | 配置存储 | electron-store | ^9.0.0 | ## 快速开始 ### 环境要求 - Node.js >= 18 - npm >= 9 ### 安装依赖 ```bash npm install ``` ### 开发模式 ```bash npm run electron:dev ``` 启动后会自动打开 Vite 开发服务器(`localhost:5173`)和 Electron 窗口。 ### 构建生产版本 ```bash npm run build ``` ### 打包安装包 ```bash npm run electron:build ``` 打包产物位于 `release/` 目录。 ### 运行测试 ```bash npm test ``` ## 使用说明 ### 导入笔记仓库 1. 点击左上角 **↓ 导入笔记** 按钮 2. 输入 Gitee 仓库地址,例如:`https://gitee.com/username/notes.git` 3. Token 可选(公开仓库无需填写,私有仓库需要 PAT Token) 4. 点击 **📂** 按钮选择本地保存路径 5. 点击 **⬇ 拉取** 开始克隆 ### 选择仓库 1. 点击侧边栏的 **📂 浏览** 按钮选择本地 Git 仓库目录 2. 或从下拉列表中选择历史仓库路径 3. 选择后文件树自动刷新 ### 编辑笔记 1. 在文件树中点击文件打开笔记 2. 点击 **👁 预览** 查看渲染效果 3. 点击 **✎ 编辑** 进入源码编辑模式 4. 使用 **← 撤销** / **→ 重做** 按钮恢复修改 ### 同步笔记 - **手动同步**:点击 **↑ 同步** 按钮 - **定时同步**:在设置页面配置同步间隔(5/15/30/60/120/480/1440 分钟) - **无 Token 模式**:公开仓库可直接同步,私有仓库 push 失败时弹窗输入 Token ### AI 助手 1. 在右侧面板输入问题或指令 2. AI 根据笔记内容提供建议 3. 选中笔记文字后提问,AI 会替换选中区域 4. 未选中时,AI 回复追加到笔记末尾 5. 在设置页面配置 AI 后端(LM Studio / Ollama / DeepSeek) ### 新建/管理笔记 - **文件树空白处右键** → 新建笔记 / 新建文件夹 - **文件夹右键** → 新建笔记 / 新建文件夹 / 重命名 / 删除 - **文件右键** → 重命名 / 删除 ### 快捷键 | 快捷键 | 功能 | |--------|------| | Ctrl+S | 保存笔记 | | Ctrl+Z | 撤销 | | Ctrl+Y | 重做 | | Ctrl+N | 新建笔记 | | Ctrl+D | 删除笔记 | | Ctrl+W | 关闭笔记 | ## 项目结构 ``` note-client/ ├── src/ │ ├── main/ # 主进程 │ │ ├── index.js # 入口 │ │ ├── preload.cjs # 安全桥接 │ │ ├── git/ │ │ │ └── manager.js # Git 操作 │ │ ├── auth/ │ │ │ └── pat.js # PAT 加密存储 │ │ ├── store/ │ │ │ └── index.js # 持久化存储 │ │ └── shortcut-manager.js # 全局快捷键 │ ├── renderer/ # 渲染进程 │ │ ├── index.html # 入口 │ │ ├── styles/ │ │ │ └── main.css # 样式 │ │ ├── app.js # 应用入口 │ │ ├── services/ # 业务逻辑 │ │ │ ├── note-service.js │ │ │ ├── sync-service.js │ │ │ └── ai-service.js │ │ ├── components/ # UI 组件 │ │ │ ├── sidebar/ # 侧边栏 │ │ │ ├── content/ # 内容区 │ │ │ ├── ai-panel/ # AI 面板 │ │ │ └── settings/ # 设置 │ │ └── utils/ # 工具函数 │ └── shared/ # 共享模块 │ └── constants.js ├── tests/ # 单元测试 ├── docs/ # 文档 ├── package.json ├── vite.config.js └── electron-builder.json5 ``` ## 常见问题 ### Q: 导入仓库后同步提示"未配置 PAT Token"? A: 同步时如果 Token 为空,会尝试匿名 push。如果仓库是私有的,push 会失败并弹窗提示输入 Token。输入后自动缓存并重试。 ### Q: 文件树展开后显示不正确? A: 确保选择的是有效的 Git 仓库目录。文件树会递归显示仓库内的文件夹和文件。 ### Q: AI 助手无法连接? A: 在设置页面检查 AI 后端配置。LM Studio 和 Ollama 默认端点为 `http://localhost:11434`,DeepSeek 需要配置 API Key。 ### Q: 如何切换主题? A: 应用跟随系统主题。在系统设置中切换深色/浅色模式,应用会自动适配。 ## 许可证 MIT