This page is for building and running Lazy Blacktea from source.
- Node.js + npm
- Rust (latest stable)
adbavailable inPATH(or configure an absolute ADB path in the app Settings)- Optional:
scrcpyfor device mirroring
iOS features are host-tool dependent and are not bundled with the app.
| Host | For inventory | For observation / extras |
|---|---|---|
| macOS | Xcode CLT (xcrun --find devicectl) and/or libimobiledevice |
idevicesyslog, idevicecrashreport, idevicescreenshot; cfgutil for profile install |
| Linux | usbmuxd + libimobiledevice-utils (idevice_id, ideviceinfo) |
same optional tools as above |
| Windows | Android only in this project (prebuilt *-setup.exe / *.msi from Releases, or build from source) |
iOS unsupported |
Quick checks:
# macOS
xcrun --find devicectl
cfgutil help
# Linux
sudo systemctl enable --now usbmuxd
idevice_id -l
ideviceinfo -u "IOS_UDID"npm install
npm run tauri devnpm install
npm run tauri buildTauri outputs bundles under src-tauri/target/ depending on your OS.
npm run test
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all --all-featuresSee docs/testing.md for macOS-friendly smoke checks (web UI + Rust tests + real-device ADB smoke).
See CONTRIBUTING.md for guidelines and PR expectations.