Rust · 项目报告

storytold/wordcraft

An open-source, clean-room reimplementation of Microsoft Word in pure Rust

已完成 打开 GitHub
S
669星标
231Fork
26Issue
Apache-2.0许可证

分析结果

项目分析

WordCraft 是一个用纯 Rust 编写的开源文字处理器项目,目标是以 clean-room 方式重新实现 Microsoft Word 的核心体验。它提供类似 Word 的 Ribbon、样式、表格、修订、引用、邮件合并等工作流,支持读取和写入 .docx,并计划/宣称支持 .odt、.rtf、.html、.md、.txt、PDF 导出等格式。项目可运行在 macOS、Windows、Linux、BSD 和 WebAssembly 浏览器环境,并提供 CLI、JSON 控制通道和 MCP Server,便于 AI Agent 自动化操作文档。

适用领域 办公软件 / 文字处理器 / 文档编辑 / 文档格式转换 / Rust 桌面应用 / WebAssembly 应用 / DOCX/OOXML 处理 / PDF 导出 / AI Agent 自动化 / MCP 工具集成
配置难度 高。该项目涉及 Rust、多平台 GUI、WASM、复杂文档模型、OOXML/DOCX 兼容、字体 shaping、分页排版、PDF 渲染、命令系统和 MCP 集成。普通 Rust 开发者可以从 CLI、格式转换或单个 crate 入手,但要理解并贡献核心排版/编辑能力需要较强系统软件和文档格式经验。
商业价值 商业价值较高,尤其适合办公软件国产化/私有化、企业离线文档处理、批量文档转换、AI Agent 文档自动化和跨平台轻量办公工具方向。Apache-2.0/MIT 友好的授权降低了商业集成门槛。不过,若要作为正式 Word 替代品落地,需要大量兼容性测试、中文本地化优化、稳定性验证和企业级支持能力。
01

技术亮点

  • 使用 Rust 实现,强调性能、安全性和跨平台能力。
  • 目标是 clean-room 重新实现 Microsoft Word,而不是基于 Electron/Tauri 的包装应用。
  • 支持 Word 风格 Ribbon、快捷键、样式库、导航窗格、批注、修订、引用、表格、邮件合并等熟悉工作流。
  • 支持 DOCX 读写,并提供 PDF、ODT、RTF、HTML、Markdown、TXT 等导入导出方向。
  • 架构分层清晰,包含文档模型、字体与校对、布局、格式解析、渲染、PDF、引擎、MCP、egui UI 和应用层。
  • 提供 CLI,可做格式转换、文本提取、文档结构检查和命令式文档编辑。
  • 面向 AI Agent 设计,所有操作都是带 ID 的命令,可通过 MCP、CLI、JSON 控制通道驱动。
  • 支持离线拼写、语法和文档处理,适合隐私敏感场景。
  • 声明有约 250 个测试,并提供 UI 截图测试、feature parity 报告和 ROADMAP。
  • 许可证为 MIT 或 Apache-2.0,仓库元数据中显示 Apache-2.0,对商业使用较友好。
02

目标用户

  • 希望研究或构建 Word 类文字处理器的 Rust 开发者
  • 需要处理 DOCX、PDF、RTF、ODT、HTML、Markdown 等文档格式的后端或工具链开发者
  • 想要开发跨平台原生桌面办公软件的团队
  • 关注国产/私有化办公套件、离线文档处理和文档自动化的企业开发团队
  • 需要通过 CLI 或 MCP 让 AI Agent 操作文档的开发者
  • 对排版引擎、分页、字体渲染、表格布局、修订和批注系统感兴趣的系统软件开发者
03

配置要求

  • 需要 Rust/Cargo 开发环境。
  • Web 版本需要安装 trunk,并具备 wasm32 相关构建目标。
  • 桌面 GUI 依赖 egui 和 GPU/窗口系统支持,不同平台可能需要额外系统依赖。
  • 如需 MCP 集成,需要安装可调用 MCP 的客户端,例如 Claude Desktop/Claude CLI,并将 wordcraft-cli mcp 注册为 MCP Server。
  • 如需命令行直接使用 wordcraft-cli,可能需要先构建或安装对应二进制。
  • 处理复杂字体、拼写检查、语法检查、断字等能力时,可能依赖项目自带或系统可用的字体与语言资源。
04

适用场景

  • 构建开源、跨平台的 Word 类桌面文字处理器
  • 在服务端或本地批量将 DOCX 转换为 PDF、HTML、Markdown、TXT、PNG 等格式
  • 从 DOCX 中提取纯文本或结构化 JSON 信息
  • 通过命令行自动修改文档内容、格式、样式并保存为新文件
  • 将文档编辑能力嵌入 AI Agent 工作流,例如自动生成、检查、修改和导出报告
  • 研究 OOXML/DOCX 解析、布局分页、表格排版、PDF 导出等复杂文档处理技术
  • 在浏览器中运行 WebAssembly 版文字处理器
  • 为企业内部构建离线、私有化的文档处理与审阅工具
05

部署与配置

  • 安装 Rust 工具链,建议使用 rustup 安装稳定版 Rust。
  • 克隆仓库:git clone https://github.com/storytold/wordcraft
  • 进入项目目录:cd wordcraft
  • 运行桌面示例应用:cargo run --release -p wordcraft -- --sample
  • 打开本地 DOCX 文档:cargo run --release -p wordcraft -- report.docx
  • 如需使用 Web 版本,进入 apps/wordcraft-web 并运行 trunk serve,然后访问 http://127.0.0.1:8771/?sample。
  • 如需运行 CI 检查,可执行 cargo xtask ci,包含格式化、clippy、测试、资源归因检查、分层检查和 wasm 构建。
06

风险与注意事项

  • 项目 README 宣称的功能非常完整,接近 Microsoft Word 全量能力,实际完成度需要结合 ROADMAP.md、docs/parity.md 和代码验证,不能仅凭 README 判断生产可用。
  • Word/DOCX 兼容性极其复杂,复杂文档、宏、嵌入对象、特殊域、企业模板、中文排版和 CJK 字体兼容性可能存在大量边界问题。
  • README 中未展示稳定版本发布、下载包、API 文档成熟度和长期维护承诺,作为生产办公套件采用前需要深入评估。
  • 仓库 star 数中等,fork 较多,但生态成熟度和社区规模相比 LibreOffice、OnlyOffice 等仍可能较弱。
  • Rust GUI、WASM、字体渲染、PDF 导出和跨平台文档布局组合复杂,构建和调试门槛较高。
  • 如果用于替代 Microsoft Word,需要关注法律、商标、格式兼容、用户习惯和企业合规问题。
  • 中文场景下需要重点测试输入法、中文字体 fallback、标点挤压、换行规则、竖排、拼音/注音、目录和页码等本地化能力。
  • MCP/Agent 自动化能力很有潜力,但也带来文档误修改、权限控制、审计和数据泄露风险。

历史记录

热榜历史快照

2026-10-09 第14名 新收录 · github_search