
Univer: SDK open-source de escritório para apps web e Node.js
O que é o Univer
O Univer é um SDK open-source mantido pela DreamNum para criar aplicativos de escritório dentro de produtos próprios, sem depender de um aplicativo hospedado ou de interface fixa. O repositório no GitHub, licenciado sob Apache-2.0, reúne planilhas, documentos, apresentações, Bases (tabelas relacionais), Boards e PDF (em breve) em um único runtime, descrito no README como "The Office Harness for AI Agents". O projeto tem cerca de 17,3 mil estrelas e 1,5 mil forks.
O foco declarado é permitir incorporar edição de planilhas e documentos em produtos SaaS, ferramentas internas, fluxos de BI ou aplicações de IA, além de processar workbooks e documentos no servidor com a mesma arquitetura usada no navegador. A ferramenta não é apenas um visualizador de arquivos: trata-se de um framework para construir superfícies de produtividade próprias.
Arquitetura e destaques
O Univer é isomórfico por design: roda aplicações com interface no navegador e processamento headless em Node.js. A arquitetura é orientada a plugins - toda capacidade é entregue como plugin componível, que pode ser adicionado, removido, substituído ou carregado de forma lazy. Uma Facade API unificada dá acesso a workbooks, planilhas, intervalos, documentos, fórmulas, comandos e eventos, com a mesma superfície no navegador e no Node.js.
O motor de renderização é baseado em Canvas, com camada compartilhada entre tipos de documento, para manter grandes superfícies editáveis responsivas. Há também um motor de fórmulas dedicado, componentes de UI que se integram a React, Vue e Web Components, e suporte a temas claro e escuro.
Modos de uso
Existem três formas de integração: o Plugin Mode, que exige composição manual de pacotes e dá controle fino sobre dependências, estilos, idiomas e registro de APIs; o Preset Mode, que oferece coleções curadas de plugins para montar uma aplicação funcional com pouca configuração; e o Headless Mode, para processamento de workbooks e documentos, cálculo de fórmulas e automação no servidor sem interface gráfica.
Workflows para agentes de IA
O projeto também se posiciona como infraestrutura para agentes de IA. Os agentes podem inspecionar e modificar conteúdo de escritório por APIs estruturadas, verificar resultados por meio de inspeção de conteúdo, capturas de tela renderizadas e diagnósticos de layout, e trabalhar em rascunhos isolados (worktrees) para que humanos revisem as alterações antes de mesclar. O ecossistema inclui o univer-sdk-skills (instruções reutilizáveis para agentes), o univer-mcp (integração MCP para comandar planilhas em linguagem natural), o Univer CLI e exemplos como o Univer Workspace, um espaço de trabalho open-source self-hostable onde pessoas e agentes criam e revisam conteúdo, incluindo mini-apps em planilhas com métricas e gráficos vinculados a células. Alguns desses fluxos exigem capacidades de colaboração do Web SDK, com disponibilidade e licenciamento variáveis por recurso.
Código aberto e camada Pro
O repositório contém o núcleo open-source e plugins de primeira parte sob Apache-2.0. O Univer Pro é uma camada comercial desenvolvida separadamente, com colaboração em tempo real, histórico de edições, importação/exportação, gráficos, tabelas dinâmicas e recursos de servidor para Sheets, além de extensões para Docs, Slides e Bases. Os princípios de fronteira estabelecidos no README determinam que os pacotes OSS sejam úteis por si só, que bugs de pacotes open-source sejam reportados e corrigidos no repositório OSS mesmo quando exista recurso Pro relacionado, e que a documentação OSS não sugira capacidades exclusivas do Pro nos pacotes públicos.
A área mais madura hoje são as planilhas; Docs e Slides compartilham a mesma arquitetura e seguem em evolução, com o modelo de dados de Slides sob desenvolvimento ativo. Em compatibilidade, o projeto mira Edge, Firefox, Chrome e Electron nas versões indicadas, Safari 14.1+, React 18/19 (com suporte mínimo a versões anteriores) e Node.js 18.17+ para o modo headless, dependendo de Intl.Segmenter com polyfill quando necessário. O desenvolvimento do monorepo exige Node.js 22.18+ e pnpm 11+, e a comunidade é atendida via GitHub Discussions e Discord.