Skip to content

Development commands ​

Core's task definitions are in Makefile.toml. Run cargo make <task> from Core's root inside its configured development shell. The Makefile initializes font generation before its tasks.

Core tasks ​

TaskBehavior
install-toolsRuns npm install for tooling. Standard Devbox setup uses npm ci.
generate-fontsGenerates LVGL fonts through fonts_generator.
format-rustRuns cargo fmt --all; accepts forwarded arguments.
format-tomlRuns Taplo formatting; accepts forwarded arguments.
format-jsonWrites JSON formatting with Prettier.
formatRuns Rust, TOML, and JSON formatters.
translate-compareCompares local translations with Tolgee.
translate-syncSyncs translations and removes unused keys.
translate-pullPulls translations from Tolgee.
translate-pushPushes local translations to Tolgee.
check-host, doc-host, clippy-hostHost compilation, documentation, or Clippy checks with the features below. Clippy denies warnings.
check-guest, doc-guest, clippy-guestGuest-library compilation, documentation, or Clippy checks with the features below. Clippy denies warnings.
check, doc, clippyRuns both the corresponding host and guest tasks.
lintRuns Clippy with all targets/features and denies warnings. Check feature compatibility before selecting all features.
testRuns cargo test --workspace.
run, buildCargo run/build wrappers accepting forwarded arguments.
coverageRuns workspace coverage with cargo-llvm-cov and forwarded arguments.
before-commitRuns format, check, doc, and clippy.

Task targets and features ​

Task familyTargetPackage/features
Hostx86_64-unknown-linux-gnugraphics,abi_definitions,graphics_rendering_xrgb8888
Guest librarywasm32-unknown-unknownPackage wasm, defaults disabled, default_guest enabled
Application guest buildwasm32-wasip1Application package, such as calculator
Browser example buildwasm32-unknown-unknownwasm_example through Trunk; Calculator release artifact required

Cargo-make uses XILA_RUST_TOOLCHAIN, defaulting to stable outside Devbox. The Devbox/CI browser workflow uses XILA_NIGHTLY_TOOLCHAIN.

Version sources and Devbox scripts ​

SourceDefines
.devbox-versionDevbox CLI version
devbox.json / devbox.lockNative tool selection and pins
development/toolchains.envXILA_RUST_TOOLCHAIN and XILA_NIGHTLY_TOOLCHAIN
package-lock.jsonnpm dependency resolution
Devbox commandBehavior
devbox run setupInstalls Rust toolchains/components/targets and runs npm ci; requires x86_64 Linux.
devbox run checkRuns cargo make check.
devbox run guiRuns cargo make run -p native_example.

Website commands ​

These npm commands run from the website repository root, not Core:

CommandBehavior
npm ciInstalls the lockfile-resolved website dependencies.
npm run docs:devStarts VitePress development mode.
npm run docs:buildBuilds the static site, sitemap, and Pagefind index.
npm run docs:previewServes the production build for inspection.
npm run docs:validateChecks source links, generated-page anchors, and navigation after a build.
npm run format:fixFormats repository files with Prettier.
npm run format:checkChecks Prettier formatting.
npm run checkChecks formatting, builds documentation, and validates documentation links.