Development
Environment
Desktop and website prerequisites and local setup.
The desktop application and website are developed independently. You can work on the website without cloning the desktop repository. If you work on both, use separate dependency installations.
Desktop application
Required:
- Rust stable and Cargo.
- Node.js 20 or newer and npm.
- Tauri 2 Linux prerequisites: WebKitGTK 4.1, GTK 3, and libsoup 3.
Required for VM operations:
- QEMU and qemu-img. The shell can start without them, but machines cannot be created or started.
- An accessible Linux KVM device at /dev/kvm is optional; without it, QEMU uses software emulation.
git clone https://github.com/somemorewater/waveVM.git
cd waveVM
npm install
npm run devSee Prerequisites for distribution notes and Building from source for the full check sequence.
Website
The website uses Node.js 18.18 or newer and pnpm. It has no build-time or runtime dependency on the desktop repository.
git clone https://github.com/somemorewater/wave-vm-website.git
cd wave-vm-website
pnpm install
pnpm devThe website is available at http://localhost:3000 by default.
Keep the projects independent
Do not add symlinks, relative imports, or runtime paths from the website to the desktop repository. Do not import desktop source files at website build time. The website must continue to build when the desktop repository is absent.