WebAssembly でブラウザ上で動作するライブスプレッドシート — スクリーンショットではありません。
ユースケース
開発者とAIエージェントのために
アプリに組み込む
1つの React コンポーネントで、あらゆる Web アプリにフルスプレッドシートを組み込めます。動的配列、ピボットテーブル、582関数をすぐに利用可能。
サーバーで実行する
Node.js または Python SDK で、XLSX ファイルの処理、数式の評価、レポート生成をサーバーサイドで実行。ブラウザは不要。
AIエージェントを強化する
LLM にスプレッドシート操作への構造化アクセスを提供。SDK の型付き API はツール利用向けに設計 — スクリーンスクレイピングもプロンプトエンジニアリングも不要。
Mog を選ぶ理由
UIコンポーネントではなく、 完全なスプレッドシートエンジン。
人間にもAIエージェントにも
LLM が直接呼び出せる構造化 API。AIエージェントワークフロー向けに設計された Python・Node.js SDK — スクリーンスクレイピングもマクロハックも不要。
- PyO3 による Python SDK でAIエージェントワークフローに対応
- N-API による Node.js SDK でネイティブパフォーマンスを実現
- バッチ処理用のヘッドレスサーバー
- ツール利用に最適化された API(構造化入出力)
Excel 完全互換を Rust で再構築
582関数、動的配列、ピボットテーブル、XLOOKUP、条件付き書式、構造化参照。サブセットではなく、本物のスプレッドシート。
- Excel 互換関数 582 個
- 動的配列、XLOOKUP、LAMBDA
- ピボットテーブル、条件付き書式、データ入力規則
- ネイティブ XLSX パース&書き出し(OOXML フルスペック対応)
リアルタイム、オフラインファースト、コンフリクトフリー
Yrs を活用した CRDT ベースのコラボレーション。オフラインで動作し、接続時に同期、データは決して失われません。OT の複雑さは不要。
- Yrs(Rust)による CRDT コラボレーション
- コンフリクトフリーな数式のためのセル ID モデル
- 自動同期付きオフラインファースト設計
- バイナリ・ワイヤープロトコルによる 60fps Canvas レンダリング
アーキテクチャ
1つの Rust エンジンで、あらゆるプラットフォームへ
Rust で一度書いて、3つのターゲットにコンパイル。ブラウザでも、サーバーでも、Python ノートブックでも同じコードが動きます。
ブラウザ
WebAssembly
Web Worker で実行。計算にサーバーとの通信は不要。
Node.js
N-API
macOS、Linux、Windows 向けネイティブバイナリ。WASM のオーバーヘッドなし。
Python
PyO3
ネイティブ Python バインディング。pandas と並べてスプレッドシート関数を使えます。
Rust 計算コア
数式、依存関係グラフ、ピボットテーブル、条件付き書式、XLSX パーサー — すべて Rust。1つのアノテーション付き API から全ターゲット向けバインディングを生成。
compute-core
parser, functions, graph, formats,
schema, stats, charts, cf, pivot,
table, fill, solver, collab, wire
バイナリ・ワイヤープロトコル
ビューポートデータは JSON ではなくコンパクトなバイナリバッファ。セルごとのメモリ割り当てゼロ。大規模シートでも 60fps。
Viewport buffer
36B header + N × 32B cell records
+ string pool + format palette
Mutation patches
Spliced directly into the viewport
buffer — no deserialization step
SDK
すべてにプログラマティックにアクセス
1つの Rust エンジン、すべての SDK。Python でも TypeScript でも同じ API。
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"]]);
});Mog で構築
あなたのプロジェクトに
AIエージェントから SaaS プロダクト、データパイプラインまで。Mog で最初に開発を始めましょう。
AIエージェント
LLM のツール利用に対応した構造化スプレッドシート API。スクリーンスクレイピング不要。
SaaS プロダクト
1つの React コンポーネントで完全なスプレッドシートを実現。動的配列もすべて対応。
データパイプライン
Python または Node.js でサーバーサイド XLSX 処理。Excel は不要。
よくある質問
Mog とは?
Mog は Rust でゼロから再構築されたオープンソースのスプレッドシートエンジンです。数式評価、依存関係追跡、XLSX パース、Canvas レンダリング、リアルタイムコラボレーションを含む完全なスプレッドシートランタイムを提供し、Web アプリへの組み込み、サーバーでの実行、Python・Node.js からの利用が可能です。
なぜ Rust なのか?
Rust により、ネイティブパフォーマンス、メモリ安全性、そして単一コードベースから WebAssembly(ブラウザ)、N-API(Node.js)、PyO3(Python)へのコンパイルが可能になります。1つのエンジンで、あらゆるプラットフォームへ。GC パウズもゼロです。
Mog は無料ですか?
はい。Mog は Modified MIT ライセンスのオープンソースです。個人プロジェクト、商用プロダクト、SaaS プラットフォームで自由にお使いいただけます。
既存のスプレッドシートライブラリとの違いは?
多くのスプレッドシートライブラリは UI レンダリングかファイルパースのどちらかに特化しています。Mog はフルスタックを提供します:582関数の Rust 計算エンジン、Canvas レンダリング、CRDT コラボレーション、ネイティブ SDK。詳細な機能比較は比較ページをご覧ください。
Mog は本番環境で使えますか?
Mog は現在開発中です。コアエンジン(数式、レンダリング、コラボレーション、XLSX)は動作しており、テスト段階にあります。オープンソースリリースに向けて準備を進めています — 最新情報はフォローしてお待ちください。
その他のご質問は? Mog について詳しく読む
Mog で開発してみませんか?
Mog は Modified MIT ライセンスでオープンソース公開予定です。
Get notified when Mog launches