Canvas spreadsheet engine · Rust/WASM core · MIT
Build web spreadsheets you still own.
Sheetwrite is a canvas spreadsheet engine with a Rust/WASM data core and first-party Vanilla, React, Vue, and Svelte adapters. Your application owns the document, the persistence, and the chrome — the engine owns the speed.
=SUM(D2:D5)- 0.6 ms
- median interaction at one million rows
- 108 MB
- renderer heap in the same capture
- 4
- first-party framework mounts
- Evidence
- Source
47f1643
Results you can check
Measured, not promised
Median speedups over Handsontable, read directly from saved benchmark results. The gap widens as the data grows.
- 1k rows7.2× fastermedian of 14 interactions · best 96.7× in
scroll-right.top-left - 10k rows10.7× fastermedian of 14 interactions · best 111.3× in
scroll-right.top-left - 100k rows26.3× fastermedian of 14 interactions · best 201.2× in
scroll-right.top-left - 1M rows130.3× fastermedian of 12 interactions · best 1522.2× in
scroll-smooth.same-window· Handsontable did not finish 2 of 14
Every interaction must return the correct result; failed runs stay failed. See how we measured it.
Live feature examples
Try the work you need to do.
Every public feature has one live example, an action to try, and a browser test you can run. Browse every feature →
- 01Database & documentsReal IndexedDB commits, conflict recovery, and compaction.Open the live scenario →
- 02InteroperabilityXLSX and CSV/TSV exchange with honest fidelity boundaries.Open the live scenario →
- 03Performance & scaleA million paged rows with measured Worker evidence.Open the live scenario →
- 04CollaborationTwo live clients staying in sync through one shared server.Open the live scenario →
Framework adapters
One engine, four first-party mounts
The same engine mounts four ways — every workbench is a bounded, directly editable product story.
Runtime contract
The ownership line is explicit
- 01 · Host
You own the product.
Lifecycle, persistence, collaboration, and product UI stay in your codebase.
- 02 · TypeScript core
One narrow seam.
Grid API, transactions, virtualization, interaction, and renderer coordination — ownership crosses in one place.
- 03 · Rust / WASM
The engine owns the speed.
Columnar cells, formulas, query scans, snapshots, and packed render windows.