storytold/wordcraft

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

Rust

8,280

46 commits

updated Oct 12, 2026

See the code

See what people are saying

SourceMessageScoreDate

@loftwah They must have just found out about https://t.co/f5YShn1tyt

1

Oct 12, 2026

@salgadowisk Na verdade nao é uma versão específica.. eles fizeram engenharia reversa no 365 e então criaram um programa novo do zero que é muito semelhante https://t.co/hOFk7dzai6

9

Oct 12, 2026

开源免费的word来了。https://t.co/bvdc2vvUWL

1

Oct 12, 2026

همون تیم‌هایی که قبلاً محصولات ادوبی رو با vibe coding ساخته بودن، حالا سراغ مایکروسافت رفتن • Word → WordCraft
https://t.co/ZQH3BBM15L • Excel → GridCraft
https://t.co/vzir89a2uX • PowerPoint → DeckCraft
https://t.co/6Or3Ogu6wR هر سه تا open-source و با rust https://t.co/fZ1Xf7C5J3

3

Oct 12, 2026

Adobe was round one! ArtCraft just shipped open source Word, Excel and PowerPoint clones in pure Rust: WordCraft, GridCraft, DeckCraft. Free, on GitHub, still alpha. The direction is obvious. Open source wins in the end. https://t.co/SNYgncq6Ph

10

Oct 12, 2026

@mastroadamo @Il_Vitruviano @giordi63 @Idl3 @robertdolci Lo sono. https://t.co/AOYrEtY0S2

1

Oct 12, 2026

https://t.co/AghrxbTP4K

10

Oct 12, 2026

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

98

Oct 12, 2026

LOL already happening https://github.com/storytold/wordcraft

on Satya Nadella says we should assume all AI models are 'compromised'

0

Oct 12, 2026

Microsoft 365 te cobra 99 € al año por Word, Excel y PowerPoint. Estos 5 repos gratis hacen ese trabajo y algo más: 1. ¿Un Word que abre .docx sin meterse en la nube de Microsoft? → WordCraft (3.5K estrellas). Rust. macOS, Windows, Linux y web. https://t.co/Q28u1QtR7k 2. https://t.co/7MohETewzP

6

Oct 11, 2026

README

ArtCraft

WordCraft

Writing and document design; an open-source, clean-room reimplementation of Microsoft Word, rebuilt in pure Rust.

A fast, open-source word processor with the Word workflow you already know: the ribbon, styles, tables, track changes, references and mail merge. It reads and writes .docx, runs natively on macOS, Windows, Linux and BSD, and in the browser via WebAssembly.
By the ArtCraft team.

Written in Rust Runs on macOS, Windows, Linux, BSD and the web License: MIT OR Apache-2.0 Agent-drivable over MCP

Join the ArtCraft community on Discord

WordCraft on getartcraft.com · ArtCraft · All Crafting Apps


WordCraft with the Home tab of the ribbon open over a two-page document titled The Open Studio Handbook. The Navigation pane on the left lists the document's headings, the Styles gallery shows live previews of Normal, Heading 1, Title and Subtitle, and a word in the first paragraph is selected.
The Open Studio Handbook, WordCraft's built-in sample: the ribbon, live Styles gallery, rulers and the Navigation pane.

[!NOTE] ArtCraft is a community of artists from all walks of life. Painters, photographers, filmmakers, illustrators, designers, animators, hobbyists, and people who picked up a pencil last week. If you make things, you're one of us. Come say hi on Discord.

A tour · Why WordCraft · What works today · Quick start · For agents · Architecture · Roadmap · Downloads · The Crafting Apps · License and credits

A tour

Every screenshot below is WordCraft itself, rendered offscreen by its own UI test harness (cargo run -p wordcraft-ui-egui --example ui_shot).

The Review tab with Track Changes on: the word forty is inserted in magenta and thirty struck through; three commented phrases are shaded and joined by dashed leader lines to comment balloons in a grey markup area to the right of the page

Review. Track changes, comment balloons in the margin, accept and reject, spelling and grammar as you type.

The References tab with two pages side by side: a table of contents with dotted leaders and page numbers on page one, and a styled table, numbered list and hyperlink on page two

References. Tables of contents, footnotes, citations in APA, MLA, Chicago or IEEE, index and captions.

The Design tab showing style-set previews; the document is set in a serif theme with plum headings underlined by thin rules and a pale diagonal DRAFT watermark behind the text

Design. Themes, style sets, paragraph spacing, watermarks, page colour and borders.

WordCraft in dark mode with the Insert tab open and formatting marks shown: pilcrows at paragraph ends and dots for spaces

Dark mode with formatting marks, and the Insert tab: tables, pictures, shapes, links, headers, footers, fields and symbols.

The Layout tab at 80% zoom: the first paragraph opens with a three-line drop cap E, a dark blue circle sits beside the second section with its paragraph wrapping around it and hyphenating art-ist at the line end, every line is numbered in the left margin and a thin blue border surrounds the page

Layout. Drop caps, text wrapping around pictures and shapes, automatic hyphenation, line numbers and page borders.

The File tab start page with a Good morning greeting, thumbnails of the Blank document, Studio handbook, Letter, Résumé and Report templates, and a list of recent documents

File. Start from a template, open recent documents, edit properties, export to PDF and other formats.

Why WordCraft

  • Familiar. Word's ribbon tabs, groups, shortcuts and behaviour: Enter continues a list, Tab demotes it, Ctrl/⌘+B bolds the word under the caret, the Styles gallery previews styles live, F4 repeats, F7 checks spelling, F8 extends the selection.
  • Your files. Opens and saves .docx (OOXML), and also .odt, .rtf, .html, .md, .txt; exports PDF with real, selectable text, links and bookmarks.
  • Fast. Paragraph layout is cached, so typing in a 188-page document re-lays it out in about 1.4 ms; pages render on demand.
  • Everywhere. One Rust codebase for macOS, Windows, Linux, BSD and the web. No Electron, no Tauri: native egui on the GPU.
  • Built for agents. Every action is a command with an id. The same 389 commands drive the ribbon, keyboard shortcuts, the command search, a command-line tool, a JSON control channel and an MCP server.
  • Private. Spelling, grammar and everything else work offline.
  • Open. MIT OR Apache-2.0. Clean-room: built from public specifications and observation, with every asset original or openly licensed.

What works today

AreaHighlights
WritingFast typing with IME, smart quotes, AutoCorrect, list autoformat (* , 1. ), dashes; word, sentence, paragraph selection; drag-select; clipboard with formatting; undo/redo; find and replace with regex
FormattingFonts, sizes, bold/italic/underline styles, strike, sub/superscript, caps, highlight, colours, character spacing, Format Painter, Change Case, Clear Formatting
ParagraphsAlignment, indents (draggable on the ruler), spacing, line spacing, tabs with leaders, borders, shading, keep with next, widow/orphan control
StylesBuilt-in style set, live gallery, Styles pane, create/modify/update styles, style sets, themes
ListsBullets, numbering, multilevel, restart, set value, custom formats
TablesInsert by grid, merge/split, styles with banded rows, borders, shading, header rows repeated across pages, rows that split across pages, sort, formulas, text ↔ table
PagesMargins, orientation, size, columns, page/column/section breaks, headers and footers (first page, odd/even), page numbers, watermark, page borders, line numbers, vertical alignment, drop caps, automatic hyphenation
ObjectsPictures (resize, crop, recolour, brightness/contrast, transparency, background removal, picture styles, rotate), shapes, text boxes, floating position with text wrapping (square, top and bottom, behind or in front of text)
ReferencesTable of contents, footnotes and endnotes, citations and bibliography (APA, MLA, Chicago, IEEE), captions, table of figures, cross-references, index, table of authorities
ReviewSpelling and grammar with suggestions, thesaurus, word count, comments in margin balloons or a pane, track changes, accept/reject, compare documents, restrict editing, accessibility checker, document inspector
MailingsMail merge from CSV, merge fields, address block, greeting line, rules, preview, finish to a document; envelopes and labels
ViewPrint layout, web layout, draft, read mode, focus, zoom, one/multiple pages, page width, Navigation pane, rulers, gridlines, dark mode; interface in English, 简体中文, 繁體中文 or 日本語 (follows the system language by default)
Files.docx read/write (opens in Word), PDF export, .odt, .rtf, .html, .md, .txt import/export, page images

The honest picture, area by area, is in ROADMAP.md and the generated feature parity report.

Quick start

git clone https://github.com/storytold/wordcraft
cd wordcraft
cargo run --release -p wordcraft -- --sample        # the desktop app with the sample document
cargo run --release -p wordcraft -- report.docx     # open a document

Command line:

wordcraft-cli convert report.docx report.pdf        # docx, pdf, odt, rtf, html, md, txt, png
wordcraft-cli text report.docx                      # plain text
wordcraft-cli inspect report.docx                   # structure as JSON
wordcraft-cli run --template sample \
  --cmd 'select.text={"text":"Membership"}' --cmd format.bold --save out.docx

Web: cd apps/wordcraft-web && trunk serve, then open http://127.0.0.1:8771/?sample.

For agents: CLI and MCP

WordCraft was designed to be driven by people and by AI agents.

claude mcp add wordcraft -- wordcraft-cli mcp                  # headless documents
wordcraft --control 7981 &                                     # or drive the running app…
claude mcp add wordcraft-app -- wordcraft-cli mcp --connect 127.0.0.1:7981

Tools include list_commands, execute, batch, type_text, select_text, inspect_document, render_page, save_document, and, with a running app, screenshot, click and key. Agents can check their work through inspect_document without screenshots. See docs/mcp.md and the control protocol. Macros record any sequence of commands and play it back (tools.recordMacro, tools.macros).

Logs

The desktop app writes its log records to standard error and to logs/wordcraft.log next to its preferences: on Linux $XDG_CONFIG_HOME/wordcraft/logs/ (by default ~/.config/wordcraft/logs/), on macOS ~/Library/Application Support/WordCraft/logs/, on Windows %APPDATA%\WordCraft\logs\. A start from a desktop menu or the Dock has no terminal, so this file is what to attach to a bug report: unreadable parts of a .docx, pictures or fonts a PDF export had to leave out and panics the command guard recovered from land there. Each launch moves the previous log to wordcraft.1.log (and that one to wordcraft.2.log), so the log of a run that crashed survives the next start; a log stops growing at 16 MiB. --version writes no file, and runs with WORDCRAFT_NO_PREFS (agents' test runs) log to standard error only. Document text is never logged; a panic message leaves out the text it quotes.

By default WordCraft's own crates log at info and everything else at warn. RUST_LOG replaces that with env_logger-style directives, for example RUST_LOG=debug, RUST_LOG=warn,wordcraft_docx=trace or RUST_LOG=info,wgpu_core=warn; a directive ending in * covers every target starting with it (wordcraft*=debug). The logger is apps/wordcraft/src/logging.rs.

Architecture

LayerCrateJob
L0wordcraft-geomunits and measurements
L1wordcraft-doc, wordcraft-fonts, wordcraft-proofdocument model and editing; fonts and shaping; spelling, grammar, hyphenation
L2wordcraft-layout, wordcraft-docx, wordcraft-formatsline breaking, pagination, tables, notes, hit testing; OOXML; ODT/RTF/HTML/Markdown/TXT
L3wordcraft-render, wordcraft-pdfrasteriser (vello_cpu); PDF (krilla)
L4wordcraft-enginesession, undo, 389 commands, Word feature catalog
L5wordcraft-mcpMCP server
L6wordcraft-ui-eguithe Word-style front end (swappable)
appswordcraft, wordcraft-cli, wordcraft-webdesktop, command line, browser

cargo xtask ci runs formatting, clippy, ~250 tests, the asset-attribution check, the layering check and the wasm build. Contributor and agent instructions: AGENTS.md.

Roadmap

WordCraft covers 87% of Word's ribbon features with commands today; counting depth and fidelity, we estimate about 62% of real feature parity. An alpha for everyday writing is close: the remaining work is mostly testing against real-world .docx files, native printing and the first signed builds. Charts, SmartArt, the equation editor and the Draw tab come after. Details and estimates: ROADMAP.md.

Downloads

Download WordCraft from GitHub: the latest release has every build listed below, and all releases has earlier versions and their notes. <ver> in the file names is the version number, and SHA256SUMS.txt lists a checksum for every file.

Windows

BuildInstallerPortable
x64 (64-bit Intel/AMD)wordcraft-<ver>-windows-x64.msiwordcraft-<ver>-windows-x64-portable.zip
arm64 (Snapdragon and other ARM PCs)wordcraft-<ver>-windows-arm64.msiwordcraft-<ver>-windows-arm64-portable.zip
x86 (32-bit)wordcraft-<ver>-windows-x86.msiwordcraft-<ver>-windows-x86-portable.zip

Installers and executables are code-signed.

If the app doesn't open on Windows: the desktop app initializes only DirectX 12 by default. Letting wgpu also create an OpenGL instance can crash some graphics drivers (AMD's atio6axx.dll) before the window appears, so the app would flash in Task Manager and quit. WGPU_BACKEND overrides the default for troubleshooting (for example dx12 or vulkan). In PowerShell, from the folder containing the executable:

$env:WGPU_BACKEND = "vulkan"
& .\wordcraft.exe
Remove-Item Env:WGPU_BACKEND                     # restore the default for later launches

An explicit gl override can bring the driver crash back on affected systems. The macOS, Linux and web backend defaults are unchanged.

macOS

BuildFileNotes
App, universal (Apple silicon + Intel)wordcraft-<ver>-macos-universal.dmgSigned and notarized
Command-line tool, universalwordcraft-cli-<ver>-macos-universal.zipSigned and notarized

Linux

Formatx86_64aarch64 (ARM64)Notes
AppImagewordcraft-<ver>-linux-x86_64.AppImagewordcraft-<ver>-linux-aarch64.AppImageRuns anywhere; updates itself with AppImageUpdate (.zsync files)
Flatpakwordcraft-<ver>-linux-x86_64.flatpakwordcraft-<ver>-linux-aarch64.flatpakSandboxed; flatpak install --user <file>
Debian/Ubuntuwordcraft-<ver>-linux-x86_64.debwordcraft-<ver>-linux-aarch64.deb
Fedora/RHEL/openSUSEwordcraft-<ver>-linux-x86_64.rpmwordcraft-<ver>-linux-aarch64.rpm
Tarballwordcraft-<ver>-linux-x86_64.tar.gzwordcraft-<ver>-linux-aarch64.tar.gzUnpack anywhere

FreeBSD

BuildFile
x86_64wordcraft-<ver>-freebsd-x86_64.tar.gz

Web (WebAssembly)

BuildFileNotes
Static sitewordcraft-web-<ver>.zipRuns in a modern browser; host it on any static server

The Crafting Apps

WordCraft is one of the Crafting Apps: free, open-source creative tools from the ArtCraft team, each written from scratch in Rust and each able to stand on its own.

AppWhat it's forCodeLearn more
PhotoCraftImage editing: layers, masks, type and real PSD filesGitHubWebsite
VectorCraftVector illustrationGitHubWebsite
FilmCraftVideo editing, color and soundGitHubWebsite
LightCraftPhoto library and raw developmentGitHubWebsite
PdfCraftReading, organizing and protecting PDFsGitHubWebsite
EffectCraftMotion graphics and visual effectsGitHubWebsite
DesignCraftPage layout and publishingGitHubWebsite
WordCraftWriting and document design · you are hereGitHubWebsite

And ArtCraft itself, our AI image and video studio for artists who want real control.


Join the ArtCraft community on Discord

Come make things with us

Our Discord is where artists of every kind hang out: people who paint, shoot, draw, cut film, set type, and people still figuring out what they like to make. Share what you're working on, ask for help, tell us what's broken, or tell us what you wish these tools could do. Whatever your medium and however long you've been at it, you're welcome here.

discord.gg/artcraft · getartcraft.com · The Crafting Apps · WordCraft

License and credits

WordCraft is dual-licensed under MIT or Apache-2.0, at your option. Copyright (c) 2026 ArtCraft Team and the WordCraft contributors. Required notices are in NOTICE.

Bundled fonts, icons, images and other assets keep their own open licenses; each one is listed with its author, source and license in ATTRIBUTION.md.

The spelling dictionary and hyphenation come from Grady Ward's public-domain Moby Hyphenator II word list. The sample documents and templates are original text written for WordCraft.

The ArtCraft name, wordmark and logos in docs/brand/ are trademarks of the ArtCraft Team and are not covered by this license. They may be used only unmodified, and only as part of this repository and WordCraft, under docs/brand/LICENSE-brand.txt. Forks and modified versions must remove them.

Microsoft and Microsoft Word are trademarks of the Microsoft group of companies. Adobe, Photoshop, Illustrator, Premiere Pro, Lightroom, Acrobat, After Effects and InDesign are trademarks or registered trademarks of Adobe Inc. in the United States and/or other countries. WordCraft is an independent, open-source project and is not affiliated with, sponsored by or endorsed by Microsoft Corporation or Adobe Inc.; these names are used only to describe the workflows it is compatible with.

ArtCraft
Made by the ArtCraft team and community.

storytold/wordcraft

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

Rust

8,280

46 commits

updated Oct 12, 2026

See the code

See what people are saying

SourceMessageScoreDate

@loftwah They must have just found out about https://t.co/f5YShn1tyt

1

Oct 12, 2026

@salgadowisk Na verdade nao é uma versão específica.. eles fizeram engenharia reversa no 365 e então criaram um programa novo do zero que é muito semelhante https://t.co/hOFk7dzai6

9

Oct 12, 2026

开源免费的word来了。https://t.co/bvdc2vvUWL

1

Oct 12, 2026

همون تیم‌هایی که قبلاً محصولات ادوبی رو با vibe coding ساخته بودن، حالا سراغ مایکروسافت رفتن • Word → WordCraft
https://t.co/ZQH3BBM15L • Excel → GridCraft
https://t.co/vzir89a2uX • PowerPoint → DeckCraft
https://t.co/6Or3Ogu6wR هر سه تا open-source و با rust https://t.co/fZ1Xf7C5J3

3

Oct 12, 2026

Adobe was round one! ArtCraft just shipped open source Word, Excel and PowerPoint clones in pure Rust: WordCraft, GridCraft, DeckCraft. Free, on GitHub, still alpha. The direction is obvious. Open source wins in the end. https://t.co/SNYgncq6Ph

10

Oct 12, 2026

@mastroadamo @Il_Vitruviano @giordi63 @Idl3 @robertdolci Lo sono. https://t.co/AOYrEtY0S2

1

Oct 12, 2026

https://t.co/AghrxbTP4K

10

Oct 12, 2026

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

98

Oct 12, 2026

LOL already happening https://github.com/storytold/wordcraft

on Satya Nadella says we should assume all AI models are 'compromised'

0

Oct 12, 2026

Microsoft 365 te cobra 99 € al año por Word, Excel y PowerPoint. Estos 5 repos gratis hacen ese trabajo y algo más: 1. ¿Un Word que abre .docx sin meterse en la nube de Microsoft? → WordCraft (3.5K estrellas). Rust. macOS, Windows, Linux y web. https://t.co/Q28u1QtR7k 2. https://t.co/7MohETewzP

6

Oct 11, 2026

README

ArtCraft

WordCraft

Writing and document design; an open-source, clean-room reimplementation of Microsoft Word, rebuilt in pure Rust.

A fast, open-source word processor with the Word workflow you already know: the ribbon, styles, tables, track changes, references and mail merge. It reads and writes .docx, runs natively on macOS, Windows, Linux and BSD, and in the browser via WebAssembly.
By the ArtCraft team.

Written in Rust Runs on macOS, Windows, Linux, BSD and the web License: MIT OR Apache-2.0 Agent-drivable over MCP

Join the ArtCraft community on Discord

WordCraft on getartcraft.com · ArtCraft · All Crafting Apps


WordCraft with the Home tab of the ribbon open over a two-page document titled The Open Studio Handbook. The Navigation pane on the left lists the document's headings, the Styles gallery shows live previews of Normal, Heading 1, Title and Subtitle, and a word in the first paragraph is selected.
The Open Studio Handbook, WordCraft's built-in sample: the ribbon, live Styles gallery, rulers and the Navigation pane.

[!NOTE] ArtCraft is a community of artists from all walks of life. Painters, photographers, filmmakers, illustrators, designers, animators, hobbyists, and people who picked up a pencil last week. If you make things, you're one of us. Come say hi on Discord.

A tour · Why WordCraft · What works today · Quick start · For agents · Architecture · Roadmap · Downloads · The Crafting Apps · License and credits

A tour

Every screenshot below is WordCraft itself, rendered offscreen by its own UI test harness (cargo run -p wordcraft-ui-egui --example ui_shot).

The Review tab with Track Changes on: the word forty is inserted in magenta and thirty struck through; three commented phrases are shaded and joined by dashed leader lines to comment balloons in a grey markup area to the right of the page

Review. Track changes, comment balloons in the margin, accept and reject, spelling and grammar as you type.

The References tab with two pages side by side: a table of contents with dotted leaders and page numbers on page one, and a styled table, numbered list and hyperlink on page two

References. Tables of contents, footnotes, citations in APA, MLA, Chicago or IEEE, index and captions.

The Design tab showing style-set previews; the document is set in a serif theme with plum headings underlined by thin rules and a pale diagonal DRAFT watermark behind the text

Design. Themes, style sets, paragraph spacing, watermarks, page colour and borders.

WordCraft in dark mode with the Insert tab open and formatting marks shown: pilcrows at paragraph ends and dots for spaces

Dark mode with formatting marks, and the Insert tab: tables, pictures, shapes, links, headers, footers, fields and symbols.

The Layout tab at 80% zoom: the first paragraph opens with a three-line drop cap E, a dark blue circle sits beside the second section with its paragraph wrapping around it and hyphenating art-ist at the line end, every line is numbered in the left margin and a thin blue border surrounds the page

Layout. Drop caps, text wrapping around pictures and shapes, automatic hyphenation, line numbers and page borders.

The File tab start page with a Good morning greeting, thumbnails of the Blank document, Studio handbook, Letter, Résumé and Report templates, and a list of recent documents

File. Start from a template, open recent documents, edit properties, export to PDF and other formats.

Why WordCraft

  • Familiar. Word's ribbon tabs, groups, shortcuts and behaviour: Enter continues a list, Tab demotes it, Ctrl/⌘+B bolds the word under the caret, the Styles gallery previews styles live, F4 repeats, F7 checks spelling, F8 extends the selection.
  • Your files. Opens and saves .docx (OOXML), and also .odt, .rtf, .html, .md, .txt; exports PDF with real, selectable text, links and bookmarks.
  • Fast. Paragraph layout is cached, so typing in a 188-page document re-lays it out in about 1.4 ms; pages render on demand.
  • Everywhere. One Rust codebase for macOS, Windows, Linux, BSD and the web. No Electron, no Tauri: native egui on the GPU.
  • Built for agents. Every action is a command with an id. The same 389 commands drive the ribbon, keyboard shortcuts, the command search, a command-line tool, a JSON control channel and an MCP server.
  • Private. Spelling, grammar and everything else work offline.
  • Open. MIT OR Apache-2.0. Clean-room: built from public specifications and observation, with every asset original or openly licensed.

What works today

AreaHighlights
WritingFast typing with IME, smart quotes, AutoCorrect, list autoformat (* , 1. ), dashes; word, sentence, paragraph selection; drag-select; clipboard with formatting; undo/redo; find and replace with regex
FormattingFonts, sizes, bold/italic/underline styles, strike, sub/superscript, caps, highlight, colours, character spacing, Format Painter, Change Case, Clear Formatting
ParagraphsAlignment, indents (draggable on the ruler), spacing, line spacing, tabs with leaders, borders, shading, keep with next, widow/orphan control
StylesBuilt-in style set, live gallery, Styles pane, create/modify/update styles, style sets, themes
ListsBullets, numbering, multilevel, restart, set value, custom formats
TablesInsert by grid, merge/split, styles with banded rows, borders, shading, header rows repeated across pages, rows that split across pages, sort, formulas, text ↔ table
PagesMargins, orientation, size, columns, page/column/section breaks, headers and footers (first page, odd/even), page numbers, watermark, page borders, line numbers, vertical alignment, drop caps, automatic hyphenation
ObjectsPictures (resize, crop, recolour, brightness/contrast, transparency, background removal, picture styles, rotate), shapes, text boxes, floating position with text wrapping (square, top and bottom, behind or in front of text)
ReferencesTable of contents, footnotes and endnotes, citations and bibliography (APA, MLA, Chicago, IEEE), captions, table of figures, cross-references, index, table of authorities
ReviewSpelling and grammar with suggestions, thesaurus, word count, comments in margin balloons or a pane, track changes, accept/reject, compare documents, restrict editing, accessibility checker, document inspector
MailingsMail merge from CSV, merge fields, address block, greeting line, rules, preview, finish to a document; envelopes and labels
ViewPrint layout, web layout, draft, read mode, focus, zoom, one/multiple pages, page width, Navigation pane, rulers, gridlines, dark mode; interface in English, 简体中文, 繁體中文 or 日本語 (follows the system language by default)
Files.docx read/write (opens in Word), PDF export, .odt, .rtf, .html, .md, .txt import/export, page images

The honest picture, area by area, is in ROADMAP.md and the generated feature parity report.

Quick start

git clone https://github.com/storytold/wordcraft
cd wordcraft
cargo run --release -p wordcraft -- --sample        # the desktop app with the sample document
cargo run --release -p wordcraft -- report.docx     # open a document

Command line:

wordcraft-cli convert report.docx report.pdf        # docx, pdf, odt, rtf, html, md, txt, png
wordcraft-cli text report.docx                      # plain text
wordcraft-cli inspect report.docx                   # structure as JSON
wordcraft-cli run --template sample \
  --cmd 'select.text={"text":"Membership"}' --cmd format.bold --save out.docx

Web: cd apps/wordcraft-web && trunk serve, then open http://127.0.0.1:8771/?sample.

For agents: CLI and MCP

WordCraft was designed to be driven by people and by AI agents.

claude mcp add wordcraft -- wordcraft-cli mcp                  # headless documents
wordcraft --control 7981 &                                     # or drive the running app…
claude mcp add wordcraft-app -- wordcraft-cli mcp --connect 127.0.0.1:7981

Tools include list_commands, execute, batch, type_text, select_text, inspect_document, render_page, save_document, and, with a running app, screenshot, click and key. Agents can check their work through inspect_document without screenshots. See docs/mcp.md and the control protocol. Macros record any sequence of commands and play it back (tools.recordMacro, tools.macros).

Logs

The desktop app writes its log records to standard error and to logs/wordcraft.log next to its preferences: on Linux $XDG_CONFIG_HOME/wordcraft/logs/ (by default ~/.config/wordcraft/logs/), on macOS ~/Library/Application Support/WordCraft/logs/, on Windows %APPDATA%\WordCraft\logs\. A start from a desktop menu or the Dock has no terminal, so this file is what to attach to a bug report: unreadable parts of a .docx, pictures or fonts a PDF export had to leave out and panics the command guard recovered from land there. Each launch moves the previous log to wordcraft.1.log (and that one to wordcraft.2.log), so the log of a run that crashed survives the next start; a log stops growing at 16 MiB. --version writes no file, and runs with WORDCRAFT_NO_PREFS (agents' test runs) log to standard error only. Document text is never logged; a panic message leaves out the text it quotes.

By default WordCraft's own crates log at info and everything else at warn. RUST_LOG replaces that with env_logger-style directives, for example RUST_LOG=debug, RUST_LOG=warn,wordcraft_docx=trace or RUST_LOG=info,wgpu_core=warn; a directive ending in * covers every target starting with it (wordcraft*=debug). The logger is apps/wordcraft/src/logging.rs.

Architecture

LayerCrateJob
L0wordcraft-geomunits and measurements
L1wordcraft-doc, wordcraft-fonts, wordcraft-proofdocument model and editing; fonts and shaping; spelling, grammar, hyphenation
L2wordcraft-layout, wordcraft-docx, wordcraft-formatsline breaking, pagination, tables, notes, hit testing; OOXML; ODT/RTF/HTML/Markdown/TXT
L3wordcraft-render, wordcraft-pdfrasteriser (vello_cpu); PDF (krilla)
L4wordcraft-enginesession, undo, 389 commands, Word feature catalog
L5wordcraft-mcpMCP server
L6wordcraft-ui-eguithe Word-style front end (swappable)
appswordcraft, wordcraft-cli, wordcraft-webdesktop, command line, browser

cargo xtask ci runs formatting, clippy, ~250 tests, the asset-attribution check, the layering check and the wasm build. Contributor and agent instructions: AGENTS.md.

Roadmap

WordCraft covers 87% of Word's ribbon features with commands today; counting depth and fidelity, we estimate about 62% of real feature parity. An alpha for everyday writing is close: the remaining work is mostly testing against real-world .docx files, native printing and the first signed builds. Charts, SmartArt, the equation editor and the Draw tab come after. Details and estimates: ROADMAP.md.

Downloads

Download WordCraft from GitHub: the latest release has every build listed below, and all releases has earlier versions and their notes. <ver> in the file names is the version number, and SHA256SUMS.txt lists a checksum for every file.

Windows

BuildInstallerPortable
x64 (64-bit Intel/AMD)wordcraft-<ver>-windows-x64.msiwordcraft-<ver>-windows-x64-portable.zip
arm64 (Snapdragon and other ARM PCs)wordcraft-<ver>-windows-arm64.msiwordcraft-<ver>-windows-arm64-portable.zip
x86 (32-bit)wordcraft-<ver>-windows-x86.msiwordcraft-<ver>-windows-x86-portable.zip

Installers and executables are code-signed.

If the app doesn't open on Windows: the desktop app initializes only DirectX 12 by default. Letting wgpu also create an OpenGL instance can crash some graphics drivers (AMD's atio6axx.dll) before the window appears, so the app would flash in Task Manager and quit. WGPU_BACKEND overrides the default for troubleshooting (for example dx12 or vulkan). In PowerShell, from the folder containing the executable:

$env:WGPU_BACKEND = "vulkan"
& .\wordcraft.exe
Remove-Item Env:WGPU_BACKEND                     # restore the default for later launches

An explicit gl override can bring the driver crash back on affected systems. The macOS, Linux and web backend defaults are unchanged.

macOS

BuildFileNotes
App, universal (Apple silicon + Intel)wordcraft-<ver>-macos-universal.dmgSigned and notarized
Command-line tool, universalwordcraft-cli-<ver>-macos-universal.zipSigned and notarized

Linux

Formatx86_64aarch64 (ARM64)Notes
AppImagewordcraft-<ver>-linux-x86_64.AppImagewordcraft-<ver>-linux-aarch64.AppImageRuns anywhere; updates itself with AppImageUpdate (.zsync files)
Flatpakwordcraft-<ver>-linux-x86_64.flatpakwordcraft-<ver>-linux-aarch64.flatpakSandboxed; flatpak install --user <file>
Debian/Ubuntuwordcraft-<ver>-linux-x86_64.debwordcraft-<ver>-linux-aarch64.deb
Fedora/RHEL/openSUSEwordcraft-<ver>-linux-x86_64.rpmwordcraft-<ver>-linux-aarch64.rpm
Tarballwordcraft-<ver>-linux-x86_64.tar.gzwordcraft-<ver>-linux-aarch64.tar.gzUnpack anywhere

FreeBSD

BuildFile
x86_64wordcraft-<ver>-freebsd-x86_64.tar.gz

Web (WebAssembly)

BuildFileNotes
Static sitewordcraft-web-<ver>.zipRuns in a modern browser; host it on any static server

The Crafting Apps

WordCraft is one of the Crafting Apps: free, open-source creative tools from the ArtCraft team, each written from scratch in Rust and each able to stand on its own.

AppWhat it's forCodeLearn more
PhotoCraftImage editing: layers, masks, type and real PSD filesGitHubWebsite
VectorCraftVector illustrationGitHubWebsite
FilmCraftVideo editing, color and soundGitHubWebsite
LightCraftPhoto library and raw developmentGitHubWebsite
PdfCraftReading, organizing and protecting PDFsGitHubWebsite
EffectCraftMotion graphics and visual effectsGitHubWebsite
DesignCraftPage layout and publishingGitHubWebsite
WordCraftWriting and document design · you are hereGitHubWebsite

And ArtCraft itself, our AI image and video studio for artists who want real control.


Join the ArtCraft community on Discord

Come make things with us

Our Discord is where artists of every kind hang out: people who paint, shoot, draw, cut film, set type, and people still figuring out what they like to make. Share what you're working on, ask for help, tell us what's broken, or tell us what you wish these tools could do. Whatever your medium and however long you've been at it, you're welcome here.

discord.gg/artcraft · getartcraft.com · The Crafting Apps · WordCraft

License and credits

WordCraft is dual-licensed under MIT or Apache-2.0, at your option. Copyright (c) 2026 ArtCraft Team and the WordCraft contributors. Required notices are in NOTICE.

Bundled fonts, icons, images and other assets keep their own open licenses; each one is listed with its author, source and license in ATTRIBUTION.md.

The spelling dictionary and hyphenation come from Grady Ward's public-domain Moby Hyphenator II word list. The sample documents and templates are original text written for WordCraft.

The ArtCraft name, wordmark and logos in docs/brand/ are trademarks of the ArtCraft Team and are not covered by this license. They may be used only unmodified, and only as part of this repository and WordCraft, under docs/brand/LICENSE-brand.txt. Forks and modified versions must remove them.

Microsoft and Microsoft Word are trademarks of the Microsoft group of companies. Adobe, Photoshop, Illustrator, Premiere Pro, Lightroom, Acrobat, After Effects and InDesign are trademarks or registered trademarks of Adobe Inc. in the United States and/or other countries. WordCraft is an independent, open-source project and is not affiliated with, sponsored by or endorsed by Microsoft Corporation or Adobe Inc.; these names are used only to describe the workflows it is compatible with.

ArtCraft
Made by the ArtCraft team and community.

Significant stargazers

Andika Triwidada

26 followers · starred Oct 2026

Miguel de Icaza

5,288 followers · starred Oct 2026

Jonah

114 followers · starred Oct 2026

Jacob Adam

36 followers · starred Oct 2026