# MNotes **Repository Path**: fyypll/mnotes ## Basic Information - **Project Name**: MNotes - **Description**: No description available - **Primary Language**: Unknown - **License**: GPL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-27 - **Last Updated**: 2026-04-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MNotes 一个基于 **Tauri 2 + Vue 3 + TypeScript** 的桌面便签应用,支持分组管理、待办视图、提醒通知、主题皮肤、透明度调节、独立便签窗口(云游)和托盘驻留。 ## 功能概览 - 分组与标签管理 - 内置分组(如便签、待办等) - 自定义分组(新建、重命名、拖拽排序、删除) - 删除分组时支持「迁移内容后删除」或「连同内容一起删除」 - 便签与待办 - 新建、编辑、删除、搜索 - 置顶、分组间移动 - 待办分组支持完成状态切换 - 提醒能力 - 便签可设置提醒时间 - 到点触发系统通知(Tauri Notification) - 提供提醒过滤与提醒状态展示 - 多窗口体验 - 主窗口支持紧凑模式、置顶、底部拖拽调高 - 独立便签窗口(云游)支持单独置顶与自适应高度 - 设置窗口等辅助窗口采用独立 Webview 承载 - 系统托盘 - 关闭主窗口默认隐藏到托盘 - 托盘菜单支持显示主窗口与退出应用 - 本地持久化 - 使用 SQLite(rusqlite)持久化 notes / groups / settings ## 技术栈 ### 前端 - Vue 3(Composition API) - TypeScript - Vite 6 - SCSS - 组件/图标:reka-ui、lucide-vue-next、@vuepic/vue-datepicker ### 桌面端(Tauri) - Tauri 2 - Rust - tauri-plugin-notification(系统通知) - tauri-plugin-opener - window-vibrancy - rusqlite(bundled SQLite) ## 项目结构 ```text MNotes/ ├─ src/ # Vue 前端 │ ├─ components/ # 主窗口与辅助窗口组件 │ ├─ composables/ # 状态管理与业务逻辑(便签、分组、提醒、窗口) │ ├─ api/ # 前端到 Tauri command 的调用封装 │ ├─ constants/ # 窗口与皮肤常量 │ ├─ styles/ # 全局与模块样式 │ ├─ main.ts # 主窗口入口 │ ├─ detached-note-main.ts # 云游便签窗口入口 │ └─ aux-window-main.ts # 辅助窗口入口 ├─ src-tauri/ # Rust / Tauri 侧 │ ├─ src/ │ │ ├─ commands.rs # Tauri commands 暴露层 │ │ ├─ storage.rs # SQLite 存储实现 │ │ ├─ window.rs # 多窗口与窗口控制 │ │ ├─ tray.rs # 托盘逻辑 │ │ ├─ models.rs # 前后端共享数据模型 │ │ └─ lib.rs # Tauri 应用组装入口 │ ├─ Cargo.toml │ └─ tauri.conf.json ├─ index.html # 主窗口 HTML ├─ detached-note.html # 云游便签窗口 HTML ├─ aux-window.html # 辅助窗口 HTML └─ package.json ``` ## 开发环境要求 - Node.js 18+ - npm 9+ - Rust(stable) - Tauri 2 开发依赖(按官方文档安装) ## 安装与运行 ```bash npm install ``` ### Web 开发模式(仅前端) ```bash npm run dev ``` ### 桌面应用开发模式(推荐) ```bash npm run tauri:dev ``` ### 构建 ```bash npm run build npm run tauri:build ``` ## NPM Scripts - `npm run dev`:启动 Vite 开发服务器 - `npm run build`:Type Check + 前端构建 - `npm run preview`:预览前端产物 - `npm run tauri:dev`:启动 Tauri 桌面开发模式 - `npm run tauri:build`:构建桌面安装包/可执行文件 ## 数据存储说明 - 应用数据存储在本地 SQLite 数据库 `mnotes.db` 中。 - 主要表结构: - `notes`:便签主体、提醒状态、分组信息 - `groups`:分组元信息与排序 - `settings`:透明度、皮肤、展开高度等设置 - 首次运行会自动初始化 schema 与默认数据。 ## 说明 - 当前界面文案以中文为主。 - 主窗口默认无系统边框,关闭行为为隐藏到托盘(非直接退出)。 - `src-tauri/target` 与 `node_modules` 属于构建产物目录,不建议纳入版本控制。