Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Getting Started

Clone and Build

Install the Rust toolchain pinned by rust-toolchain.toml, then:

git clone https://github.com/CogniPilot/rumoca
cd rumoca
cargo build --workspace

Install the Developer CLI

The repository uses an xtask developer CLI (the cargo-xtask convention) for every verification, packaging, and maintenance workflow. Install the standalone launcher and the repo hooks once:

cargo xtask repo cli install     # `xtask` on PATH + shell completions
cargo xtask repo hooks install   # git hooks

After that, xtask ... works from anywhere in the workspace (the cargo xtask ... form always works too).

Fetch Modelica Dependencies

cargo xtask repo modelica-deps ensure

Downloads the pinned MSL and CMM versions into target/, which the examples, tests, and committed VS Code settings expect.

Sanity Check

cargo xtask verify quick

This runs the same verification surface as GitHub CI except the slow full-MSL parity gate. It expects the local prerequisites CI installs: cargo-llvm-cov, Node/npm, and the wasm Rust target/tooling. For the narrow loops you will actually iterate with, see Testing and Quality Gates.

Editor Setup

Open the repository root in VS Code with the Rumoca Modelica extension. For compiler development, enable rumoca.useSystemServer and put your locally built rumoca-lsp on PATH so the editor exercises your changes. Launch the extension from source in editors/vscode when working on the extension itself.

Find Your Bearings

  1. Read Pipeline Overview if you have not yet.
  2. Read Where the Rules Live — five minutes that will save your first review round.
  3. Pick the chapter for the area you are changing; it links the owning spec.