Build and web
Native checks feed the public WebAssembly lab.
The pipeline keeps simulator correctness, browser artifacts, and static Pages publishing as separate gates.
Local commands
makeBuild the native raylib app.
make testRun C test binaries for simulation, app, and renderer helpers.
make webCompile the browser target with Emscripten.
make dist-wasmPackage the generated HTML, JS, and WASM artifact.
Artifact checks
tools/check_wasm_artifacts.py confirms the generated solar-system-simulator.html, .js, and .wasm files exist and contain expected markers. The WebAssembly binary is checked for valid magic bytes.
web/shell.html is the Emscripten shell that gives the browser runtime a stable status surface.
GitHub workflows
.github/workflows/build.yml builds native and WebAssembly lanes. .github/workflows/deploy-pages.yml runs after a successful Build workflow on main, normalizes downloaded artifact paths, builds Astro, and publishes to GitHub Pages.