Skip to content

Open Source · MIT

A planilha para humanos e agentes.

Um motor de planilhas open-source reconstruído em Rust. Arrays dinâmicos, tabelas dinâmicas, XLOOKUP — com SDKs para Node.js feitos para IA.

bash
npm install @mog-sdk/node

Planilha real rodando no seu navegador via WebAssembly — não é uma captura de tela.

Loading Mog spreadsheet...

Casos de Uso

Feito para desenvolvedores e agentes

Incorpore no seu app

Adicione uma planilha completa em qualquer aplicação web com um único componente React. Arrays dinâmicos, tabelas dinâmicas e 582 funções prontas para uso.

Rode no servidor

Processe arquivos XLSX, avalie fórmulas e gere relatórios no servidor com o SDK de Node.js. Sem necessidade de navegador.

Alimente agentes de IA

Dê a LLMs acesso estruturado a operações de planilha. A API tipada do SDK foi projetada para tool-use — sem screen scraping ou engenharia de prompt.

Por que Mog

Um motor de planilhas completo, não apenas um componente de UI.

Agêntico

Feito para humanos e agentes

Uma API estruturada que LLMs podem chamar diretamente. SDKs para Node.js projetados para workflows de agentes de IA — sem screen scraping ou gambiarras com macros.

  • SDK Node.js via N-API para workflows de agentes de IA
  • SDK Node.js via N-API com performance nativa
  • Servidor headless para processamento em lote
  • API pronta para tool-use (entrada/saída estruturada)
Poderoso

Compatibilidade total com Excel, reconstruída em Rust

582 funções, arrays dinâmicos, tabelas dinâmicas, XLOOKUP, formatação condicional e referências estruturadas. Não é um subconjunto — é completo.

  • 582 funções compatíveis com Excel
  • Arrays dinâmicos, XLOOKUP, LAMBDA
  • Tabelas dinâmicas, formatação condicional, validação de dados
  • Leitura e escrita nativa de XLSX (spec OOXML completa)
Colaborativo

Tempo real, offline-first, sem conflitos

Colaboração baseada em CRDT com Yrs. Funciona offline, sincroniza quando conectado, nunca perde dados. Sem a complexidade de operational transform.

  • Colaboração CRDT via Yrs (Rust)
  • Modelo de identidade de células para fórmulas sem conflito
  • Offline-first com sincronização automática
  • Renderização em canvas a 60fps via protocolo binário

Arquitetura

Um engine em Rust, todas as plataformas

Escrito uma vez em Rust, compilado para três alvos. O mesmo código no navegador, no servidor e em notebooks Node.js.

Navegador

WebAssembly

Roda em um Web Worker. Zero round-trips ao servidor para computação.

Node.js

N-API

Binários nativos para macOS, Linux e Windows. Sem overhead de WASM.

Core computacional em Rust

Fórmulas, grafo de dependências, tabelas dinâmicas, formatação condicional e parser XLSX — tudo em Rust. Uma única API anotada gera bindings para todos os alvos.

compute-core

parser, functions, graph, formats,

schema, stats, charts, cf, pivot,

table, fill, solver, collab, wire

Protocolo binário de comunicação

Dados do viewport como buffers binários compactos, não JSON. Zero alocações por célula. 60fps em planilhas grandes.

Viewport buffer

36B header + N × 32B cell records

+ string pool + format palette

Mutation patches

Spliced directly into the viewport

buffer — no deserialization step

SDK

Acesso programático a tudo

Um engine em Rust, todos os SDKs. A mesma API em TypeScript.

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"]]);
});

Feito com Mog

Usado por desenvolvedores

Times e desenvolvedores criando produtos com planilhas usando o Mog.

Adopter logos will appear here as teams start building with Mog.

Perguntas frequentes

O que é o Mog?

Mog é um motor de planilhas open-source reconstruído do zero em Rust. Ele oferece um runtime completo de planilha — avaliação de fórmulas, rastreamento de dependências, parsing de XLSX, renderização em canvas e colaboração em tempo real — que você pode incorporar em apps web, rodar em servidores ou usar via Node.js.

Por que Rust?

Rust nos dá performance nativa, segurança de memória e a capacidade de compilar para WebAssembly (navegador), N-API (Node.js) e N-API for Node.js. Um engine, todas as plataformas, zero pausas de garbage collection.

O Mog é gratuito?

Sim. O Mog é open source sob a licença MIT. Use em projetos pessoais, produtos comerciais ou plataformas SaaS.

Como o Mog se compara a outras bibliotecas de planilha?

A maioria das bibliotecas de planilha foca em renderização de UI ou em parsing de arquivos. O Mog entrega a stack completa: um motor de computação em Rust com 582 funções, renderização em canvas, colaboração CRDT e SDKs nativos. Veja a página de comparação para uma matriz detalhada de funcionalidades.

O Mog está pronto para produção?

Mog is in active development. The source repository and SDK packages are public now, while APIs are still stabilizing before 1.0.

Mais dúvidas? Leia mais sobre o Mog

Pronto para construir com o Mog?

O Mog é open source sob a licença MIT.