From 978e68202da02505ecfbd5329d0467cddcdf31cb Mon Sep 17 00:00:00 2001 From: thzxx <1440196015@qq.com> Date: Mon, 17 Aug 2026 16:29:31 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E5=AE=8C=E5=96=84=20README=EF=BC=8C?= =?UTF-8?q?=E5=BA=94=E7=94=A8=E5=90=8D=E7=A7=B0=E7=BB=9F=E4=B8=80=E4=B8=BA?= =?UTF-8?q?=20DiffLens?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 91 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7373c2b..e39dbbb 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,92 @@ -# difflens +# DiffLens -DiffLens - 精美酷炫的文本对比桌面应用 (Text Diff Desktop App built with TypeScript + React + Electron) \ No newline at end of file +> 精美酷炫的开源文本差异化对比桌面应用 +> Text Diff Desktop App — built with **TypeScript + React + Electron** + +DiffLens 是一款跨平台桌面文本对比工具,帮助你快速定位两份文件之间的所有差异。它采用暗色科幻视觉风格,提供**行级 + 词级内联高亮**的双栏并排视图与流畅的差异导航,操作简单、开箱即用。 + +--- + +## ✨ 特性 + +- **双栏并排对比**:左(原文件)右(对比文件)对照,行号清晰对齐 +- **行级 + 词级双重高亮**:整行增删一目了然,同一行内的细微改动也能被精确定位 +- **差异导航**:一键“上一处 / 下一处”在差异之间跳跃,也可直接点击定位 +- **智能编码识别**:自动探测 UTF-8 / UTF-16 / GBK(含 BOM),中文文档不乱码 +- **忽略选项**:支持“忽略行首尾空白”“忽略大小写”,适配弱差异场景 +- **差异统计徽章**:实时统计新增 / 删除 / 修改行数 +- **拖拽与菜单双入口**:支持文件拖拽导入,也支持顶部菜单与快捷键打开 +- **滚动联动**:左右两个面板滚动位置自动同步 + +--- + +## 🧰 技术栈 + +| 层次 | 技术 | +| --- | --- | +| 语言 | TypeScript | +| UI | React 18 | +| 桌面壳 | Electron | +| 构建 | electron-vite (Vite 5) | +| 打包 | electron-builder | +| Diff 引擎 | jsdiff(行级 LCS + 词级词法 diff) | +| 编码 | iconv-lite | + +--- + +## 🚀 快速开始 + +```bash +# 安装依赖 +npm install + +# 启动开发模式(打开 Electron 窗口) +npm run dev + +# 类型检查 +npm run typecheck + +# 生产构建 +npm run build +``` + +### 打包安装包 + +```bash +npm run build:win # Windows NSIS 安装包(需在 Windows 上执行) +npm run build:mac # macOS DMG +npm run build:linux # Linux AppImage / deb +``` + +--- + +## 🏗️ 架构 + +采用 Electron 经典三进程模型: + +``` +src/ +├── main/ # 主进程:窗口、菜单、文件读取与编码探测、IPC +├── preload/ # 预加载:contextBridge 安全桥,仅暴露最小 API +└── renderer/ # 渲染进程:React 界面与全部 diff 逻辑 + ├── diff/ # diff 引擎(行级 + 词级高亮) + ├── components/ # 界面组件(DiffView / Toolbar 等) + └── styles/ # 全局主题样式 +``` + +**安全设计**:渲染进程通过 `contextBridge` 隔离,不直接接触 Node 能力;文件读取等系统操作统一收敛在主进程,仅经 IPC 白名单暴露。 + +--- + +## 📦 发布 + +- 作者:thzxx +- 组织:MetonaTeam +- 开源协议:MIT License(见 [LICENSE](./LICENSE)) +- 版本:0.1.0 + +--- + +## 📝 License + +[MIT](./LICENSE) © 2026 thzxx 团队(MetonaTeam) \ No newline at end of file