Modelica
August 1, 2026 ยท View on GitHub
Taskyon integrates Rumoca compilation, JavaScript and native simulation, library catalogs, browser editing, and OMC comparison tooling.
yarn modelica:cli
yarn modelica:compare
yarn modelica:compare:native
yarn modelica:baseline:diff
Before changing Modelica compiler, template, runtime, or simulation code, read
packages/modelica/README.md. Runtime bugs must first be reproduced and fixed in generated
JavaScript, then backported to the owning template or compiler layer.
The browser compiler currently consumes the rumoca-full-web package alias. For local Rumoca
compiler development, follow the source-build and dependency-override workflow in
packages/modelica/README.md; it is the maintained source of truth. The previous documentation's
versioned tarball and manual archive-copy procedure no longer matches the workspace dependency
flow.
Modelica library archives are downloaded from the configured catalog and cache. They must not be
committed under public/.
Persistence
The browser editor and Node diagnostics use Taskyon's StorageClient rather than opening OPFS or a feature-specific cache directory directly. This keeps Modelica independent of whether storage is local, worker-hosted, remote, or eventually peer-backed.
- Projects are records in
modelica/projects; the selected project is thetaskyon.modelica.projectIdrecord inmodelica/settings. - Editor settings are records in
modelica/editor. - Library archives and parsed outputs are content-addressed blobs. Metadata and rebuildable class
indexes are records in their own
modelica/*namespaces. - External compiler processes may receive a temporary filesystem copy when they require a path. That copy is scratch data, not another durable cache.
The persisted project format remains taskyon.modelica_project.v1, and the simulation ABI remains
taskyon.sim_service.v1. Backend paths and filenames are implementation details and are not part of
either contract.