Headless Spreadsheet Engine
A workbook calculation platform for apps, automation, and AI agents.
Formulon ships one C++17 calculation core across WASM, Python, Native Node, CLI, and MCP so applications can read, evaluate, recalculate, and write .xlsx / .xlsb files without Excel, Microsoft runtimes, or COM automation. For a spreadsheet UI in the browser, formulon-cell builds on the same engine.
The remaining 15 require external services such as Copilot, cloud Python, image fetch, market data, or CUBE connections. See why
Formulon is easiest to evaluate from the place where the workbook runs. Pick the deployment first, then move into the runtime, API, and compatibility details that matter for that path.
Workbooks are calculated inside your own process, with no desktop app to automate and no hosted service to send files to. How closely the results match Excel is measured and published.
Results are compared with values captured from Excel 365; each known difference is recorded with its reason and build.
Locale28 locale profilesFourteen locales on Mac and Windows, so text comparison and formula names follow the Excel you target.
LocalData stays with youCalculation is local. In a browser, an uploaded workbook never has to leave the device.
One coreSame value on every runtimeWASM, Python, Native Node, CLI, and MCP all call the same C++17 core.
Round tripLoad to save, not just formulasOpen .xlsx or .xlsb, edit, recalculate, and write the workbook back.
Coverage511 of 526 functions run locallyThe other 15 depend on Microsoft 365 services and return a fixed error.
This sheet is the real formulon-cell surface backed by @libraz/formulon. Pick a function to rewrite F2 and recalculate it in the WASM engine. Array functions spill their result down column F.
formulon-mcp exposes the Formulon calculation core as MCP tools. Agents can open .xlsx or .xlsb files, inspect structure, edit cells and sheets, recalculate, and save the result.
[mcp_servers.formulon]
command = "npx"
args = ["-y", "@libraz/formulon-mcp"]
L1 is the C++17 calculation core (formulon). L2 provides the WASM, Python, Native Node, and CLI interfaces. L3 contains packages for applications and agents. L4 is the consumer.
Dashed packages are not published to npm; build them from a Formulon source checkout.