Build, test, and release
Developer setup is separate from musician installation. These commands build the source workspace; they are not a substitute for release packages.
Prerequisites
Section titled “Prerequisites”- Rust toolchain pinned by
rust-toolchain.toml, includingwasm32-unknown-unknown - Node.js and npm for frontend tooling and Playwright
- Lefthook
- REAPER for plugin integration work
- Ableton Live for Remote Script integration validation
Common commands
Section titled “Common commands”cargo nextest run --workspacecargo clippy --workspace --all-targets -- -D warnings./scripts/test.sh quick./scripts/build-and-deploy.shUse ./scripts/test.sh full for the repository’s full local validation gate. The project intentionally uses local validation rather than cloud CI.
Frontend and host builds
Section titled “Frontend and host builds”./scripts/build-rust-frontend.sh release./scripts/prepare-local-stack.sh./scripts/install-ableton-remote.shThe current deployment scripts enforce a macOS development host. Cross-platform release packaging is orchestrated by ./scripts/build-release.sh and requires its documented cross-compilation toolchains.
Quality policy
Section titled “Quality policy”- Never bypass Lefthook with
--no-verify. - Add BDD-style tests for real behavior, not constants or framework behavior.
- Run formatting, Clippy, relevant Rust tests, and focused browser tests after changes.
- Keep REAPER API work behind the repository-owned FFI and main-thread dispatch boundary.
Release and contribution status
Section titled “Release and contribution status”No public release process, source URL, issue tracker, contribution guide, maintainer route, or release artifacts are published in the available metadata. Those owner inputs must exist before external contribution or release instructions can be completed.
The project is licensed under GPL-3.0-or-later.