Akan Datang · Open Source · Modified MIT
Hamparan untuk manusia dan ejen.
Enjin hamparan sumber terbuka dibina semula dengan Rust. Array dinamik, jadual pivot, XLOOKUP — dengan SDK Python dan Node.js yang direka untuk AI.
Pakej SDK akan diterbitkan semasa pelancaran. Ikuti untuk kemas kini
Hamparan langsung berjalan di pelayar anda melalui WebAssembly — bukan tangkapan skrin.
Kes Penggunaan
Dibina untuk pembangun dan ejen
Benamkan dalam aplikasi anda
Masukkan hamparan penuh ke mana-mana aplikasi web dengan satu komponen React. Array dinamik, jadual pivot, dan 582 fungsi terus tersedia.
Jalankan di pelayan
Proses fail XLSX, nilai formula, dan jana laporan di sisi pelayan dengan SDK Node.js atau Python. Tiada pelayar diperlukan.
Kuasakan ejen AI
Beri LLM akses berstruktur kepada operasi hamparan. API bertaip SDK direka untuk penggunaan alat — tiada screen scraping atau kejuruteraan prompt.
Kenapa Mog
Enjin hamparan lengkap, bukan sekadar komponen UI.
Dibina untuk manusia dan ejen
API berstruktur yang boleh dipanggil terus oleh LLM. SDK Python dan Node.js direka untuk aliran kerja ejen AI — tiada screen scraping atau helah makro.
- SDK Python melalui PyO3 untuk aliran kerja ejen AI
- SDK Node.js melalui N-API dengan prestasi natif
- Pelayan headless untuk pemprosesan kelompok
- API sedia guna-alat (input/output berstruktur)
Keserasian Excel penuh, dibina semula dalam Rust
582 fungsi, array dinamik, jadual pivot, XLOOKUP, pemformatan bersyarat, dan rujukan berstruktur. Bukan subset — yang sebenar.
- 582 fungsi serasi Excel
- Array dinamik, XLOOKUP, LAMBDA
- Jadual pivot, pemformatan bersyarat, pengesahan data
- Penghuraian dan penulisan XLSX natif (spesifikasi OOXML penuh)
Masa nyata, offline-first, bebas konflik
Kolaborasi berasaskan CRDT dikuasakan oleh Yrs. Berfungsi secara luar talian, menyegerak apabila bersambung, tidak pernah kehilangan data. Tiada kerumitan operational transform.
- Kolaborasi CRDT melalui Yrs (Rust)
- Model identiti sel untuk formula bebas konflik
- Offline-first dengan segerak automatik
- Rendering kanvas pada 60fps melalui protokol wire binari
Seni Bina
Satu enjin Rust, semua platform
Ditulis sekali dalam Rust, dikompil ke tiga sasaran. Kod yang sama di pelayar, di pelayan, dan dalam notebook Python.
Pelayar
WebAssembly
Berjalan dalam Web Worker. Tiada round-trip ke pelayan untuk pengiraan.
Node.js
N-API
Binari natif untuk macOS, Linux, dan Windows. Tiada overhead WASM.
Python
PyO3
Binding Python natif. Gunakan formula hamparan bersama pandas.
Teras pengiraan Rust
Formula, graf kebergantungan, jadual pivot, pemformatan bersyarat, dan penghurai XLSX — semuanya Rust. Satu API beranotasi menjana binding untuk setiap sasaran.
compute-core
parser, functions, graph, formats,
schema, stats, charts, cf, pivot,
table, fill, solver, collab, wire
Protokol wire binari
Data viewport sebagai buffer binari padat, bukan JSON. Sifar peruntukan per sel. 60fps pada hamparan besar.
Viewport buffer
36B header + N × 32B cell records
+ string pool + format palette
Mutation patches
Spliced directly into the viewport
buffer — no deserialization step
SDK
Akses berprogram ke segalanya
Satu enjin Rust, semua SDK. API yang sama dalam Python dan 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"]]);
});Dibina Dengan Mog
Sedia untuk projek anda
Daripada ejen AI hingga produk SaaS hingga pipeline data. Jadilah antara yang pertama membina dengan Mog.
Ejen AI
API hamparan berstruktur untuk penggunaan alat LLM. Tiada screen scraping.
Produk SaaS
Hamparan penuh dalam satu komponen React. Array dinamik dan semuanya.
Pipeline data
Proses fail XLSX di sisi pelayan dalam Python atau Node.js. Tanpa Excel.
Soalan yang kerap ditanya
Apakah Mog?
Mog ialah enjin hamparan sumber terbuka yang dibina semula dari awal dalam Rust. Ia menyediakan runtime hamparan lengkap — penilaian formula, penjejakan kebergantungan, penghuraian XLSX, rendering kanvas, dan kolaborasi masa nyata — yang boleh anda benamkan dalam aplikasi web, jalankan di pelayan, atau gunakan melalui Python dan Node.js.
Kenapa Rust?
Rust memberi kami prestasi natif, keselamatan memori, dan keupayaan untuk mengkompil ke WebAssembly (pelayar), N-API (Node.js), dan PyO3 (Python) daripada satu pangkalan kod. Satu enjin, semua platform, tanpa jeda kutipan sampah.
Adakah Mog percuma?
Ya. Mog adalah sumber terbuka di bawah lesen Modified MIT. Gunakan dalam projek peribadi, produk komersial, atau platform SaaS.
Bagaimana Mog berbanding dengan pustaka hamparan sedia ada?
Kebanyakan pustaka hamparan memfokus sama ada pada rendering UI atau penghuraian fail. Mog menyediakan keseluruhan tindanan: enjin pengiraan Rust dengan 582 fungsi, rendering kanvas, kolaborasi CRDT, dan SDK natif. Lihat halaman perbandingan untuk matriks ciri terperinci.
Adakah Mog sedia untuk pengeluaran?
Mog sedang dalam pembangunan aktif. Enjin teras (formula, rendering, kolaborasi, XLSX) berfungsi dan dalam pengujian. Kami sedang menuju ke arah keluaran sumber terbuka — ikuti kami untuk kemas kini pelancaran.
Ada soalan lain? Baca lebih lanjut tentang Mog
Berminat untuk membina dengan Mog?
Mog akan menjadi sumber terbuka di bawah lesen Modified MIT.
Get notified when Mog launches