一、开篇:为什么你需要这个工具?
写完一篇技术文档,想立刻转成 PDF 发给同事,结果发现编辑器不支持导出;打开 VSCode 预览 Markdown 表格样式惨不忍睹;用某云笔记写文档又被强制绑定账号、Markdown 语法识别得一塌糊涂。这是每个技术写作者都踩过的坑。GitHub 上 143 颗 Star 的轻量级桌面应用 Moji 正是为解决这些痛点而生:开箱即用、支持导出、原生 Markdown 体验,真正做到「写作即写作」。

二、项目简介:一句话说明它是什么
Moji 是基于 Electron + React + TypeScript + electron-vite 构建的轻量级 Markdown 桌面应用,目前版本为 v1.0.5。它的核心关键词是:跨平台(Windows/macOS/Linux)、多文档工作区、原生 Markdown 渲染、内置 Mermaid 图表、支持多格式导出。对于只想安静写文档、懒得折腾插件的用户来说,Moji 是一个「装完就能用」的干净选择。
三、核心功能深度解析
1. 多文档工作区与标签管理
Moji 支持横向标签页切换、脏标记提示、关闭按钮、重复文件检测以及未保存确认。每个标签页右键菜单可以关闭其他标签、右侧标签、已保存标签或全部标签。这种设计的优势在于:相比 Typora 那种「单文档沉浸式」编辑器,Moji 更适合同时处理多个文档的场景,例如撰写 API 文档时主文档与示例文档对照查看。
2. 完整的 Markdown 预览引擎
预览模式不是简单调用一个库就完事。Moji 内置了 KaTeX 数学公式渲染(行内 $…$ 与块级 $$…$$)、脚注、定义列表、上下标、高亮/插入标记、Emoji shortcode、链接识别、typographer 排版优化以及带语法高亮的代码块,每个代码块还自带一键复制按钮。对比某些在线编辑器丢失数学公式、脚注或 typographer 的问题,Moji 的渲染完整度明显更高。
3. Mermaid 图表与图像查看器
凡是合法的 mermaid 围栏代码块都会被渲染成响应式 SVG,包括流程图、时序图、甘特图、类图、ER 图、状态图、用户旅程图等七种类型。点击渲染后的 SVG 或 Markdown 图片会弹出模态框,支持缩放、拖拽导航、小地图导航以及单独导出 PNG。即便是语法错误的 Mermaid 代码块,也会降级为普通代码块保持可读性。这种「渲染失败不爆炸」的设计细节,是衡量工具成熟度的关键指标。
4. 大纲导航 + 搜索替换
大纲树在预览和编辑模式均可使用,预览模式下采用 scroll-spy 联动,点击标题自动滚动或移动光标。顶部搜索栏能跨内联格式匹配可见 Markdown 文本,区分当前匹配并显示「当前 / 总数」统计;编辑器模式还独立提供「替换一条 / 替换全部」按钮。这两点决定了长文档的可读性:5000 行的技术规范文档,能否在 3 秒内跳转到目标章节,取决于这套大纲与搜索能力。
5. 多格式导出与本地化
支持将活动文档导出为 HTML、PDF 或 PNG。PDF 支持 A4、Letter、Legal 三种纸张规格以及横竖版式,长代码行在 PDF 和 PNG 导出时会自动换行,避免代码被截断。Mermaid 图表在三种导出格式中都会以独立 SVG 嵌入,保证离线查看效果。语言方面支持英语、葡萄牙语(巴西)、西班牙语、日语、中文、俄语六种,首次启动跟随操作系统语言,用户选择会被持久化。

四、技术亮点与性能数据
Moji 采用了现代化的桌面应用技术栈:Electron 渲染进程沙箱化 + contextIsolation + nodeIntegration: false,并配合 DOMPurify 做 HTML 净化处理,外部链接统一走系统浏览器打开。这种「默认安全」配置在 Electron 应用中并不常见,多数同类工具仍开启 nodeIntegration。
更新机制方面,Windows NSIS 与 Linux AppImage 打包版本会通过 electron-updater 检查 GitHub Releases,发现新版本后跳转至发布页让用户自行选择对应平台的安装包,避免「下错架构」的尴尬。Vite 7 + electron-vite 5 带来的热重载让开发体验丝滑,启动时间控制得相当到位——打开 5MB 的 Markdown 文件几乎瞬时响应。
五、适用场景与人群
场景一:技术文档写作与发布。需要撰写带 Mermaid 流程图、数学公式、代码块的 API 文档,最终导出为 PDF 发给客户或团队。Moji 的 KaTeX + Mermaid + 多格式导出组合正是为此设计。
场景二:学术笔记与读书笔记。需要频繁使用脚注、上下标、高亮标记,且希望本地化保存不绑定云端账号。Moji 的离线特性与多语言界面非常合适。
场景三:会议记录与项目文档。多文档工作区 + 大纲导航 + 搜索替换,让你同时管理会议纪要、需求文档、技术方案三个标签页而不混乱。
适合谁:追求轻量、注重隐私、需要离线编辑 Markdown 的开发者、技术写作者、研究人员。
不适合谁:需要云同步、协作编辑、版本控制等高级功能的团队(建议使用 Notion、Obsidian 等工具)。

六、竞品对比
| 维度 | Moji | Typora | VSCode + 插件 | Obsidian |
|---|---|---|---|---|
| 价格 | 免费开源 | 付费(已停止售卖) | 免费 | 免费 + 增值 |
| 启动速度 | 极快 | 快 | 较慢 | 较慢 |
| 导出 PDF/PNG | 原生支持 | 原生支持 | 依赖插件 | 依赖插件 |
| Mermaid 支持 | 内置渲染 | 内置 | 需插件 | 内置 |
| 多文档标签 | 支持 | 不支持 | 支持 | 支持 |
| 云同步 | 无 | 无 | 无 | 有 |
| 安装包体积 | 较小 | 较小 | 大 | 中 |
选择 Moji 的核心理由:相比 Typora 已经停止售卖且不再维护,Moji 仍在持续更新;相比 VSCode + Markdown 插件的臃肿,Moji 是「开箱即用」的轻量选择;相比 Obsidian 的知识库定位,Moji 更专注于「写作工具」本身。
七、如何快速上手
安装步骤
前往 GitHub Releases 页面下载对应平台安装包:
- Windows:下载
Moji.Setup.1.0.5.exe双击安装 - macOS:下载
Moji-1.0.5-universal.dmg,由于未签名需在「系统设置 > 隐私与安全性」中点击「仍要打开」,或在终端执行xattr -dr com.apple.quarantine /Applications/Moji.app清除隔离属性 - Linux:下载 AppImage 或 DEB 包直接安装
开发模式
需要 Node.js ^20.19.0 || >=22.12.0,克隆仓库后执行:
npm install 安装依赖,npm run dev 启动带热重载的 Electron 开发环境,npm run typecheck 进行 TypeScript 类型检查,npm test 运行 Vitest 测试套件,npm run build 构建生产版本。
进阶建议
首次启动时建议在 Settings 中根据屏幕尺寸调整阅读宽度,并切换至熟悉的中文界面;如需调试更新机制,可使用 npm run dev:update 模拟 99.0.0 版本更新提示,便于验证流程。

八、总结与行动建议
Moji 用 143 颗 Star 与持续迭代的 v1.0.5 版本证明:好的写作工具不一定要复杂。它把多文档管理、KaTeX 公式、Mermaid 图表、多格式导出、本地化、离线优先这些关键能力浓缩进一个干净的桌面应用,且代码完全开源(MIT 协议)。对于厌倦了臃肿编辑器与云端绑架的 Markdown 用户,Moji 值得一试。
项目地址:GitHub 搜索 alexishida/Moji 或访问仓库主页。官方网站:https://alexishida.com/moji/ 。
一句话推荐:如果你只想安静写 Markdown,Moji 就是那个「装完就能写、写完就能导」的桌面应用。