GridCraft: a Rust spreadsheet with XLSX compatibility and WebAssembly support
GridCraft: an open-source, clean-room spreadsheet (Microsoft Excel-style) in pure Rust. By ArtCraft.
At a glance
- What is it?
- GridCraft is an open-source, Excel-style spreadsheet written in pure Rust for desktop, browser, and agent-driven workflows. Its main strength is a wide spreadsheet feature set with XLSX round-tripping, while installation details remain undocumented in the README.
- Who is it for?
- GridCraft suits developers who want an embeddable Rust spreadsheet engine, an Excel-compatible desktop or WebAssembly interface, or MCP access for agent-driven spreadsheet work. It is a poorer choice for users who need a fully documented installation path today or depend on legacy `.xls` formatting and objects.
- Can I use it commercially?
- Yes. Apache-2.0 is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository received new commits within the last day.
- What is it written in?
- Mainly Rust, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
Why GridCraft targets spreadsheet engineers
GridCraft addresses the need for a spreadsheet application that follows the familiar Microsoft Excel workflow while being implemented in pure Rust. The intended audience is broader than Rust library users. The README presents GridCraft as a desktop application for macOS, Windows, Linux, and BSD, a browser application through WebAssembly, and a system that agents can drive over MCP. That combination matters for teams building spreadsheet interfaces, data tools, or workflows that need a spreadsheet model without depending on Microsoft Excel itself.
The project is explicitly described as a clean-room reimplementation. That wording describes the project's approach, not a claim that its behavior is identical to every Excel release. The interface uses Excel conventions such as a ribbon, formula bar, Name Box, sheet tabs, keyboard shortcuts, fill handles, formula entry with colored references, Format Cells, and Paste Special. A user who already understands Excel can orient the interaction model quickly. Developers can focus on the Rust implementation and its separated workspace crates.
The workspace is organized around `crates/*`, `apps/*`, and `xtask`, with default members including `apps/gridcraft`, `apps/gridcraft-cli`, and several internal libraries. The visible Cargo configuration also names `gridcraft-core`, `gridcraft-model`, `gridcraft-calc`, `gridcraft-xlsx`, `gridcraft-chart`, `gridcraft-engine`, `gridcraft-ui-egui`, `gridcraft-mcp`, and `gridcraft-pdf`. This layout suggests that the application, command-line interface, calculation engine, file formats, user interface, PDF support, and MCP integration are separated into components rather than kept in one monolithic program.
Inside the Rust workbook and calculation architecture
The documented calculation architecture uses a dependency graph. GridCraft describes support for dynamic arrays and spilling, more than 500 worksheet functions, and newer formula constructs including `LET`, `LAMBDA`, `MAP`, `REDUCE`, `SCAN`, `BYROW`, `BYCOL`, and `MAKEARRAY`. Structured table references are also listed as supported. This makes the engine relevant to applications that need formula evaluation rather than only a grid for displaying values.
The workbook model is described as using copy-on-write storage, with undo snapshots described as nearly free. The README also lists sorting, AutoFilter, Flash Fill, data validation, outlining, subtotals, conditional formatting, and Excel's full number-format language. Those features cover common spreadsheet data-entry and reporting operations, but they also show that the project is intended to reproduce a large application workflow rather than expose a minimal cell API.
File handling is another central part of the design. XLSX is described as the native format, with styles, themes, formulas, tables, conditional formats, validation, comments, hyperlinks, charts, pictures, sparklines, PivotTables, and print settings able to round-trip. CSV and TSV are also supported. Excel 97-2003 `.xls` workbooks open with values, formulas, and number formats, while formatting and objects are not yet supported. XLSB and ODS worksheet data can be imported using saved values instead of formulas. These distinctions matter because import support does not mean full round-trip compatibility for every format.
The browser target is provided through WebAssembly. The README does not explain the browser startup path, bundle command, or deployment configuration, so those details cannot be inferred from the project name alone.
A first look at the documented sample workflow
The README does not provide a complete installation tutorial or a documented command for building the desktop application. It directs readers to the GridCraft page at `getartcraft.com/apps/gridcraft` and provides source repository links, but it does not show install flags, a package name, a build command, runtime prerequisites, or browser configuration. A first real use can therefore be described only through the application's documented sample path.
The README shows a Quarterly Sales Dashboard and identifies the route used to create it:
File → New → SampleThat menu action is the first concrete workflow documented by the project. It should open the sample described as a styled table with banded rows, filter buttons, a totals row, data bars, arrow icons, sparklines, a clustered column chart, and a pie chart. The example is useful because it exercises several GridCraft subsystems at once: worksheet data, formatting, conditional presentation, chart objects, and a dashboard layout.
After opening the sample, the documented interface includes the Formulas ribbon, a function library, the Insert ribbon, PivotTable and Table controls, chart design controls, and a Format pane. A user can inspect the selected chart and its source range, or open the PivotTable Fields pane to review fields assigned to Filters, Columns, Rows, and Values. The README also documents File New Sample as a way to reach the dashboard, but it does not document saving the sample, changing its workbook format, or invoking a headless conversion workflow. Those operations should not be assumed.
XLSX, MCP, and the boundaries of compatibility
XLSX compatibility is GridCraft's clearest adoption argument. Because XLSX is described as the native format, the project is aimed at users who need spreadsheet interchange rather than a proprietary local-only document. The listed round-trip set includes formulas, dynamic arrays, styles, themes, validation, comments, hyperlinks, charts, pictures, sparklines, PivotTables, and print settings. The README separately documents PDF export and printing, plus Page Break Preview and print settings.
The limits are concrete. `.xls` workbooks preserve values, formulas, and number formats, but formatting and objects are not yet supported. XLSB and ODS imports use saved values instead of formulas. These are import paths with reduced semantic preservation, not full editable replacements for every Excel feature. A team migrating complex legacy workbooks should inspect whether its critical content is limited to cells and formulas or also depends on formatting, embedded objects, and recalculation behavior.
MCP is another distinct interface. The README advertises GridCraft as agent-drivable over MCP and includes a dedicated `gridcraft-mcp` crate in the workspace. The README does not document MCP setup, transport configuration, permissions, tool names, or an end-to-end agent example. Consequently, the project has a stated agent integration path, but a prospective adopter still needs concrete documentation before depending on MCP operation.
Compared with a conventional spreadsheet application, GridCraft's approach is different in two ways. It is built from Rust workspace crates and includes an engine-oriented design, while still presenting an Excel-style interface. Against a minimal spreadsheet library, it goes much further by emphasizing UI, charts, PivotTables, printing, file compatibility, and WebAssembly. Against Excel itself, it offers a clean-room open-source implementation, but the documented gaps show that compatibility is feature-dependent.
Features, maintenance, and adoption costs
The repository lists recent releases through v0.7.0 on 2026-10-14, following v0.6.1 and v0.5.0 in the preceding week. The repository is not archived, and its last push was on 2026-10-15. These facts indicate recent repository activity, but they do not establish that every subsystem is stable or that upgrades will be inexpensive.
The visible Cargo workspace uses Rust edition 2024 and declares a minimum Rust version of 1.90. The workspace also includes dependencies such as `egui`, `eframe`, `rayon`, `serde`, `quick-xml`, `zip`, and `image`. A team adopting GridCraft as a dependency will need to account for Rust toolchain requirements, native UI dependencies where applicable, WebAssembly packaging work, and the maintenance of its own integration around the internal crates. Those are engineering costs, although the README does not quantify them.
The repository contains both `LICENSE-APACHE` and `LICENSE-MIT`, and the Cargo workspace declares `MIT OR Apache-2.0`, while the README badge also displays `MIT OR Apache-2.0`. That dual licensing gives adopters a documented choice, but license selection and compliance should be reviewed against the project's actual files and intended distribution model. No legal interpretation is needed to identify the relevant identifiers.
For spreadsheet users, the main upgrade question is whether their workbooks rely on features that are only partially supported for `.xls`, XLSB, or ODS. For developers, the question is whether the `gridcraft-core`, calculation, format, and UI boundaries remain suitable for their application. The README does not describe a migration policy, deprecation schedule, or compatibility guarantee for future releases.
Editorial conclusion
GridCraft suits developers who want an embeddable Rust spreadsheet engine, an Excel-compatible desktop or WebAssembly interface, or MCP access for agent-driven spreadsheet work. It is a poorer choice for users who need a fully documented installation path today or depend on legacy `.xls` formatting and objects. Verify first whether the current release builds for the target platform, whether the required XLSX features are needed, and how the project distributes the desktop, CLI, browser, and MCP components. The repository's last push was on 2026-10-15.
Frequently asked questions
How do I install GridCraft?
The README directs users to the GridCraft page at `getartcraft.com/apps/gridcraft`, but it does not document a complete installation command or setup tutorial. The repository includes Rust workspace files, but no build command is shown in the README.
Can GridCraft open Microsoft Excel files?
GridCraft documents XLSX as its native format and says that many workbook features round-trip. Excel 97-2003 `.xls` files open with values, formulas, and number formats, but formatting and objects are not yet supported. XLSB and ODS imports use saved values instead of formulas.
Does GridCraft support formulas, charts, and PivotTables?
Yes. The README lists more than 500 worksheet functions, dynamic arrays, `LET`, `LAMBDA`, structured table references, 17 chart types, and PivotTables with fields, filters, layouts, date grouping, and show-values-as options. The documentation also describes PDF export, printing, and Page Break Preview.
Can GridCraft run in a browser?
The README states that GridCraft runs in the browser through WebAssembly. It does not provide browser installation instructions, a deployment command, or a sample browser configuration.
What license does GridCraft use?
The repository contains `LICENSE-APACHE` and `LICENSE-MIT`, and the workspace Cargo configuration declares `MIT OR Apache-2.0`. The README badge also displays `MIT OR Apache-2.0`.
Official sources
Where developers are discussing it
Posts on Hacker News, dev.to and Lobsters that link to this repository, found by our scan of those communities. 1 in the last 30 days; newest first.
- GridCraft: An open-source, clean-room spreadsheet (MS Excel-style) in pure RustHacker News · Oct 16, 2026 · 3 points · 2 comments
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/storytold-gridcraft)Was this useful?