Komt oan · Open Source · Modified MIT
De spreadsheet foar minsken en agenten.
In open-source spreadsheet-motor opnij boud yn Rust. Dynamyske arrays, pivot-tabellen, XLOOKUP — mei Python- en Node.js-SDK's boud foar AI.
SDK-pakketten wurde publisearre by lansearring. Folgje foar updates
Live spreadsheet draait yn jo browser fia WebAssembly — gjin skermôfbylding.
Gebrûksgefallen
Boud foar ûntwikkelders en agenten
Yn jo app ynbêde
Set in folsleine spreadsheet yn elke webapplikaasje mei ien React-komponint. Dynamyske arrays, pivot-tabellen en 582 funksjes kant-en-klear.
Op in server draaie
XLSX-bestannen ferwurkje, formules evaluearje en rapporten server-side generearje mei de Node.js- of Python-SDK. Gjin browser nedich.
AI-agenten oandriuwe
Jou LLMs strukturearre tagong ta spreadsheet-operaasjes. De typed API fan de SDK is ûntworpen foar tool-use — gjin skerm-scraping of prompt-engineering.
Wêrom Mog
In folsleine spreadsheet-motor, net samar in UI-komponint.
Boud foar minsken en agenten
In strukturearre API dy't LLMs direkt oanroppe kinne. Python- en Node.js-SDK's ûntworpen foar AI-agentworkflows — gjin skerm-scraping of macro-hacks.
- Python SDK fia PyO3 foar AI-agentworkflows
- Node.js SDK fia N-API mei native prestaasjes
- Headless server foar batchferwurking
- Tool-use-klear API (strukturearre ynput/útput)
Folsleine Excel-kompatibiliteit, opnij boud yn Rust
582 funksjes, dynamyske arrays, pivot-tabellen, XLOOKUP, betingstlike opmaak en strukturearre ferwizings. Net in subset — it echte wurk.
- 582 Excel-kompatibele funksjes
- Dynamyske arrays, XLOOKUP, LAMBDA
- Pivot-tabellen, betingstlike opmaak, gegevensvalidaasje
- Native XLSX-parsing en -skriuwen (folsleine OOXML-spesifikaasje)
Realtime, offline-first, konfliktfrij
CRDT-basearre gearwurking oandriifd troch Yrs. Wurket offline, synket as ferbûn, ferliest nea gegevens. Gjin kompleksiteit fan operasjonele transformaasje.
- CRDT-gearwurking fia Yrs (Rust)
- Sel-identiteitsmodel foar konfliktfrije formules
- Offline-first mei automatyske sync
- Canvas-rendering op 60fps fia binêr wire-protokol
Arsjitektuer
Ien Rust-motor, elk platfoarm
Ien kear skreaun yn Rust, kompilearre nei trije doelen. Deselde koade yn de browser, op in server en yn in Python-notebook.
Browser
WebAssembly
Draait yn in Web Worker. Gjin server-rûnreizen foar berekkeningen.
Node.js
N-API
Native binaries foar macOS, Linux en Windows. Gjin WASM-overhead.
Python
PyO3
Native Python-bindings. Brûk spreadsheet-formules njonken pandas.
Rust-berekkenkern
Formules, ôfhinklikheidsgraft, pivot-tabellen, betingstlike opmaak en XLSX-parser — allegear Rust. Ien annoteare API generearret bindings foar elk doel.
compute-core
parser, functions, graph, formats,
schema, stats, charts, cf, pivot,
table, fill, solver, collab, wire
Binêr wire-protokol
Viewport-gegevens as kompakte binêre buffers, net JSON. Nul allokaasjens per sel. 60fps op grutte blêden.
Viewport buffer
36B header + N × 32B cell records
+ string pool + format palette
Mutation patches
Spliced directly into the viewport
buffer — no deserialization step
SDK
Programmatyske tagong ta alles
Ien Rust-motor, elke SDK. Deselde API yn Python en TypeScript.
Python
import mog
wb = mog.create_workbook()
ws = wb.active_sheet()
# Set values and formulas
ws.set_cell("A1", "Revenue")
ws.set_cell("A2", 150000)
ws.set_cell("A3", "=A2 * 1.15")
# Dynamic arrays just work
ws.set_cell("B1", '=FILTER(A1:A3, A1:A3>100000)')
# Convert to pandas DataFrame
wb.calculate()
df = ws.to_dataframe()
wb.save("forecast.xlsx")Node.js
import { createWorkbook } from "@mog-sdk/node";
const wb = await createWorkbook();
const ws = wb.getActiveSheet();
// Set values and formulas
await ws.setCell("A1", "Revenue");
await ws.setCell("A2", 150000);
await ws.setCell("A3", "=A2 * 1.15");
// Structured table references
await ws.tables.add({ range: "A1:A3", name: "Forecast" });
await ws.setCell("B1", "=Forecast[@Revenue]");
// Batch operations into a single undo step
await wb.batch(async () => {
await ws.setRange("C1:C3", [["Q2"], [170000], ["=C2*1.15"]]);
});Boud mei Mog
Klear foar jo projekt
Fan AI-agenten oant SaaS-produkten oant datapipelines. Wês ien fan de earsten dy't mei Mog bouwt.
AI-agenten
Strukturearre spreadsheet-API foar LLM-gebrûk. Gjin skerm-scraping.
SaaS-produkten
Folsleine spreadsheet yn ien React-komponint. Mei dynamyske arrays en alles deroan.
Datapipelines
XLSX-bestannen server-side ferwurkje yn Python of Node.js. Excel net nedich.
Faak stelde fragen
Wat is Mog?
Mog is in open-source spreadsheet-motor fan de grûn ôf opnij boud yn Rust. It biedt in folsleine spreadsheet-runtime — formule-evaluaasje, ôfhinklikheidsbehear, XLSX-parsing, canvas-rendering en realtime gearwurking — dy't jo yn webapps ynbêde kinne, op servers draaie kinne, of fanút Python en Node.js brûke kinne.
Wêrom Rust?
Rust jout ús native prestaasjes, ûnthâldfeiligens en de mooglikheid om fanút ien kodebasis te kompileerjen nei WebAssembly (browser), N-API (Node.js) en PyO3 (Python). Ien motor, elk platfoarm, nul garbage collection-pauzes.
Is Mog fergees?
Ja. Mog is open source ûnder de Modified MIT-lisinsje. Brûk it yn persoanlike projekten, kommersjele produkten of SaaS-platfoarmen.
Hoe ferhâldt Mog him ta besteande spreadsheet-bibleteekjes?
De measte spreadsheet-bibleteekjes rjochtsje har op UI-rendering of bestânsparsing. Mog biedt de folsleine stapel: in Rust-berekkenmottor mei 582 funksjes, canvas-rendering, CRDT-gearwurking en native SDK's. Sjoch de fergelykingspagina foar in detaillearre funksje-oersicht.
Is Mog klear foar produksje?
Mog is yn aktive ûntwikkeling. De kernmotor (formules, rendering, gearwurking, XLSX) is funksjoneel en wurdt hifke. Wy wurkje ta in open-source-release — folgje ús foar lansearberjuchten.
Mear fragen? Lês mear oer Mog
Nijsgjirrich om mei Mog te bouwen?
Mog sil open source wêze ûnder de Modified MIT-lisinsje.
Get notified when Mog launches