Skip to content
Mog is in active development. The GitHub repo, SDK packages, and community channels are not yet available. Follow for launch updates
← Back to blog
·Mog Team

Introducing Mog: An Open-Source Spreadsheet Engine

announcementlaunch

Spreadsheets are the most widely used data tool in the world, but the engines behind them are either proprietary or incomplete. If you want to embed a spreadsheet in your app, process XLSX files on a server, or build a data tool on spreadsheet primitives, your options are limited.

Today, we're open-sourcing Mog — a spreadsheet engine built from scratch in Rust.

Why build a new spreadsheet engine?

Most spreadsheet libraries solve one piece of the puzzle. Some handle formulas but not rendering. Some render a grid but can't parse XLSX files. Some work in the browser but not on a server. Mog is a single engine that covers the full stack.

What Mog is

A Rust compute core — 500+ Excel-compatible functions compiled to WebAssembly for browsers, N-API for Node.js, and Python bindings via PyO3. A custom bridge framework generates type-safe bindings for every target from a single annotated API.

CRDT-based collaboration — Built on Yrs (Rust port of Yjs). Every edit merges conflict-free, even offline. Cells are keyed by stable UUIDs, so concurrent structure changes compose correctly.

Canvas rendering — Every pixel drawn on HTML Canvas. A binary wire protocol streams viewport data from Rust with zero allocations per cell, enabling 60fps rendering.

Native file I/O — XLSX parsing and writing in Rust, client-side, no server needed.

Get started

bash
# Node.js SDK
npm install @mog-sdk/node
# Or clone the repo
git clone https://github.com/mog-project/mog.git
cd mog && pnpm install

Check out the Getting Started guide or explore the API documentation.

What's next

See our public roadmap for what's coming. We're stabilizing the public API, expanding Python support, and building a self-hosted collaboration server.

Join the community

  • GitHub — Star the repo, report issues, contribute
  • Discord — Chat with the team and other developers
  • Twitter — Follow for updates

We're building Mog in the open and welcome contributions. Check out the contributing guide to get started.