Load Rift is a Tauri desktop app for importing Postman collections and running local k6 tests.
This repository currently contains the first working Tauri vertical slice:
- Tauri 2 backend setup
- React + TypeScript frontend setup
- A typed frontend API layer
- Postman collection import from file and URL
- Local k6 execution with live output, metrics/status tracking, and report export
- Bundled project-local k6 binary for Linux and macOS desktop builds
- Node.js 22+
- npm
- Rust and Cargo
- Tauri system dependencies
On this machine, cargo check succeeded against the current Linux GTK/WebKit stack.
npm install
npm run install:k6npm run tauri devThis starts the Vite frontend and the Tauri desktop shell together.
npm run buildThis builds the frontend only and writes the static assets to dist/.
To build the Tauri app bundle:
npm run tauri buildBuild outputs land in:
dist/: frontend build output used by Taurisrc-tauri/target/release/: compiled Rust release binariessrc-tauri/target/release/bundle/: packaged desktop artifacts
Common bundle subdirectories under src-tauri/target/release/bundle/ include:
- Linux:
appimage/,deb/,rpm/ - macOS:
macos/,dmg/
Tauri produces native bundles for the current build platform, so Linux bundles must be built on Linux and macOS bundles must be built on macOS.
npm run dev: starts the Vite frontend onlynpm run lint: runs ESLintnpm run typecheck: runs TypeScript checksnpm run build: builds the frontend intodist/npm run install:k6: downloads the project-local k6 binary intosrc-tauri/bin/npm run tauri dev: runs the desktop app in dev modenpm run tauri build: builds the desktop app and writes bundles tosrc-tauri/target/release/bundle/
The app currently provides a slim migration shell with:
- File / URL import entry points
- A test harness panel for start / stop / status
- Event listeners for:
k6:outputk6:metricsk6:completek6:error
- Supported Linux and macOS builds vendor
k6v1.6.1intosrc-tauri/bin/using the platform-specific target triple filename. - Tauri bundles those binaries as application resources, so packaged Linux and macOS artifacts do not rely on a system-wide k6 install.
- At runtime the app still honors
LOADRIFT_K6_BINfirst, which is useful for local overrides or debugging. - URL import uses Tauri's HTTP client instead of host
curl/wgetbinaries.
- Load Rift is licensed under MIT. See
LICENSE. - The root
LICENSEfile contains only the project's MIT license text so GitHub and package tooling can detect it cleanly. - Packaged Linux and macOS builds bundle
k6v1.6.1, which is licensed separately under AGPL-3.0. - See
THIRD_PARTY_LICENSES.mdfor the exact bundledk6version and corresponding source references. - See
licenses/AGPL-3.0.txtfor the AGPL-3.0 license text shipped with this repository. - Tauri bundle resources also ship these licensing documents inside the app,
and Linux AppImage/
.deb/.rpmoutputs install copies under/usr/share/doc/loadrift/.
When publishing packaged app binaries, include a release note alongside the
download that calls out the bundled k6 binary and its corresponding source.
Use this template:
This package bundles Grafana k6 v1.6.1, licensed under AGPL-3.0.
Corresponding source: https://github.com/grafana/k6/tree/v1.6.1
Source archive: https://github.com/grafana/k6/archive/refs/tags/v1.6.1.tar.gz
Additional bundled licensing notices are included in the package.
src/: React frontendsrc/lib/loadrift/: shared TS types and frontend API contractsrc/lib/tauri/: Tauri-specific frontend adaptersrc/features/: frontend hooks and flow statesrc-tauri/: Rust backend