Skip to content

Runtimes

Formulon ships one calculation core through several host surfaces. Choose by deployment constraints, not by formula semantics. If two runtimes disagree on a workbook, treat that as a bug or a documented compatibility gap.

Same engine, different host contract

WASM, Python, Native Node, and CLI should share calculation behavior. What changes is packaging, file access, memory ownership, startup cost, and how errors cross the host boundary.

RuntimeUse when
WASMBrowser, worker, or Node deployment without native addon assumptions
PythonScripts, notebooks, data pipelines, and batch recalculation
Native NodeNode services that can deploy a platform-specific .node addon
CLIShell workflows, CI snapshots, and issue reproduction
CI regressionStable workbook diffs in automated checks

Decision rules

  • Use WASM when workbook data starts in the browser, when upload privacy matters, or when a server should not receive the raw file.
  • Use Python when the workbook is part of report generation, scheduled jobs, data validation, or notebook workflows.
  • Use Native Node only when a service can ship native artifacts and wants lower startup overhead than WASM.
  • Use CLI for reproducible issue reports, CI snapshots, and one-off recalculation checks.

API entry points

The detailed API pages are grouped under this runtime section instead of being a top-level navigation category:

API pagePurpose
Surface matrixCompare package surfaces and host responsibilities
WASM APIBrowser / worker usage and lifetime management
Python APIBatch recalculation and workbook inspection
CLI referenceShell automation and CI usage

What is not decided here

Runtime choice does not prove Excel compatibility. Before using Formulon for business-critical workbooks, check Compatibility and run fixtures against your own files.