From c2cdba546ba5de50ecd882126b62f4a653a0c179 Mon Sep 17 00:00:00 2001 From: thzxx Date: Wed, 27 May 2026 18:09:31 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E6=B7=BB=E5=8A=A0=20TypeScript=20+=20R?= =?UTF-8?q?eact=20+=20IndexedDB=20=E9=87=8D=E6=9E=84=E6=96=B9=E6=A1=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- REFACTOR-PLAN.md | 825 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 825 insertions(+) create mode 100644 REFACTOR-PLAN.md diff --git a/REFACTOR-PLAN.md b/REFACTOR-PLAN.md new file mode 100644 index 0000000..a588b2a --- /dev/null +++ b/REFACTOR-PLAN.md @@ -0,0 +1,825 @@ +# MarkLite 重构方案:TypeScript + React + IndexedDB + +## 一、重构目标与原则 + +| 维度 | 现状 | 目标 | +|------|------|------| +| 语言 | JavaScript (无类型) | **TypeScript 5.x** (全量类型) | +| UI 框架 | 原生 DOM 操作 | **React 18** (函数组件 + Hooks) | +| 状态管理 | 全局变量 + 闭包 | **Zustand** (轻量状态管理) | +| 持久化 | localStorage | **IndexedDB** (via Dexie.js) | +| 样式 | 纯 CSS | **CSS Modules** + CSS 变量 | +| 构建 | 无打包 | **Vite** + electron-vite | +| Markdown | marked.min.js (离线) | **unified/remark/rehype** 生态 | +| 代码高亮 | highlight.js (离线) | **Shiki** 或 **rehype-highlight** | +| 编辑器 | `