Bientôt disponible · Open Source · Modified MIT
Le tableur pour humains et agents.
Un moteur de tableur open source réécrit en Rust. Tableaux dynamiques, tableaux croisés, XLOOKUP — avec des SDK Python et Node.js conçus pour l'IA.
Les packages SDK seront publiés au lancement. Suivez les mises à jour
Un vrai tableur qui tourne dans votre navigateur via WebAssembly — pas une capture d'écran.
Cas d'usage
Conçu pour les développeurs et les agents
Intégrez dans votre app
Ajoutez un tableur complet dans n'importe quelle app web avec un seul composant React. Tableaux dynamiques, tableaux croisés et 582 fonctions inclus.
Exécutez sur un serveur
Traitez des fichiers XLSX, évaluez des formules et générez des rapports côté serveur avec le SDK Node.js ou Python. Sans navigateur.
Alimentez des agents IA
Offrez aux LLM un accès structuré aux opérations tableur. L'API typée du SDK est conçue pour le tool-use — sans scraping d'écran ni prompt engineering.
Pourquoi Mog
Un moteur de tableur complet, pas juste un composant UI.
Conçu pour les humains et les agents
Une API structurée que les LLM peuvent appeler directement. Des SDK Python et Node.js pensés pour les workflows d'agents IA — sans scraping d'écran ni hacks de macros.
- SDK Python via PyO3 pour les workflows d'agents IA
- SDK Node.js via N-API avec performances natives
- Serveur headless pour le traitement par lots
- API prête pour le tool-use (entrées/sorties structurées)
Compatibilité Excel complète, réécrite en Rust
582 fonctions, tableaux dynamiques, tableaux croisés, XLOOKUP, mise en forme conditionnelle et références structurées. Pas un sous-ensemble — le vrai moteur.
- 582 fonctions compatibles Excel
- Tableaux dynamiques, XLOOKUP, LAMBDA
- Tableaux croisés, mise en forme conditionnelle, validation des données
- Lecture et écriture XLSX native (spécification OOXML complète)
Temps réel, offline-first, sans conflit
Collaboration basée sur CRDT propulsée par Yrs. Fonctionne hors ligne, se synchronise à la reconnexion, ne perd jamais de données. Sans la complexité de l'operational transform.
- Collaboration CRDT via Yrs (Rust)
- Modèle d'identité cellulaire pour des formules sans conflit
- Offline-first avec synchronisation automatique
- Rendu canvas à 60fps via protocole binaire
Architecture
Un seul moteur Rust, toutes les plateformes
Écrit une seule fois en Rust, compilé vers trois cibles. Le même code dans le navigateur, sur un serveur et dans un notebook Python.
Navigateur
WebAssembly
S'exécute dans un Web Worker. Zéro aller-retour serveur pour le calcul.
Node.js
N-API
Binaires natifs pour macOS, Linux et Windows. Sans surcoût WASM.
Python
PyO3
Bindings Python natifs. Utilisez des formules tableur aux côtés de pandas.
Cœur de calcul Rust
Formules, graphe de dépendances, tableaux croisés, mise en forme conditionnelle et parseur XLSX — tout en Rust. Une seule API annotée génère les bindings pour chaque cible.
compute-core
parser, functions, graph, formats,
schema, stats, charts, cf, pivot,
table, fill, solver, collab, wire
Protocole binaire
Données du viewport sous forme de buffers binaires compacts, pas du JSON. Zéro allocation par cellule. 60fps sur les grandes feuilles.
Viewport buffer
36B header + N × 32B cell records
+ string pool + format palette
Mutation patches
Spliced directly into the viewport
buffer — no deserialization step
SDK
Accès programmatique à tout
Un moteur Rust, tous les SDK. La même API en Python et 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"]]);
});Construit avec Mog
Prêt pour votre projet
Des agents IA aux produits SaaS en passant par les pipelines de données. Soyez parmi les premiers à construire avec Mog.
Agents IA
Une API tableur structurée pour le tool-use des LLM. Sans scraping d'écran.
Produits SaaS
Un tableur complet dans un seul composant React. Tableaux dynamiques inclus.
Pipelines de données
Traitez vos XLSX côté serveur en Python ou Node.js. Sans Excel.
Questions fréquentes
Qu'est-ce que Mog ?
Mog est un moteur de tableur open source entièrement réécrit en Rust. Il fournit un runtime tableur complet — évaluation de formules, suivi des dépendances, parsing XLSX, rendu canvas et collaboration temps réel — que vous pouvez intégrer dans des apps web, exécuter sur des serveurs, ou utiliser depuis Python et Node.js.
Pourquoi Rust ?
Rust nous offre des performances natives, la sûreté mémoire, et la capacité de compiler vers WebAssembly (navigateur), N-API (Node.js) et PyO3 (Python) à partir d'une seule base de code. Un seul moteur, toutes les plateformes, zéro pause de garbage collection.
Mog est-il gratuit ?
Oui. Mog est open source sous licence Modified MIT. Utilisez-le dans vos projets personnels, produits commerciaux ou plateformes SaaS.
Comment Mog se compare aux bibliothèques de tableurs existantes ?
La plupart des bibliothèques se concentrent soit sur le rendu UI, soit sur le parsing de fichiers. Mog fournit la stack complète : un moteur de calcul Rust avec 582 fonctions, rendu canvas, collaboration CRDT et SDK natifs. Consultez la page de comparaison pour une matrice détaillée des fonctionnalités.
Mog est-il prêt pour la production ?
Mog est en cours de développement actif. Le moteur principal (formules, rendu, collaboration, XLSX) est fonctionnel et en phase de test. Nous travaillons vers une release open source — suivez-nous pour les mises à jour de lancement.
D'autres questions ? En savoir plus sur Mog
Envie de construire avec Mog ?
Mog sera open source sous licence Modified MIT.
Get notified when Mog launches