Android, under control.
ATA-GUI puts adb, fastboot, sideload, logcat and screen mirroring behind one calm desktop
window. Remove the apps you never asked for, flash a boot image with progress you can actually
read, watch the device log live, or drop into a real shell — without memorising a single command.
The 3.x app was a WinForms tool that did a lot and froze while doing it. This is the same tool rebuilt on Tauri 2 + Rust + React — same workflows, none of the blocking. Every adb and fastboot call runs off the UI thread with a watchdog and a cancel button, the window is a native binary around the system webview (≈2.5 MB installer), and the whole thing ships for Windows, Linux and macOS from one codebase.
No account. No telemetry. No bundled SDK you did not ask for — Platform Tools and scrcpy are downloaded on first use and live beside the app.
The APK manager lists every installed package with search, bulk selection, install-from-file, uninstall, disable and restore. Split bundles install as one, a drag-and-drop zone takes APKs straight from Explorer, and the bloatware list from the Universal Android Debloater marks what is safe to remove — no root, no package names to copy.
Queue boot, recovery, vbmeta or a whole set of partitions, pick a slot, and flash. The panel
follows the tool it is driving — sending, writing, done — with the transfer size, elapsed
time and raw fastboot output, line by line. Sideload an OTA from recovery with a real progress bar,
or pull a partition image off the device and keep the .img. Cancel works mid-flight; the child
process dies with it.
A dedicated log window streams logcat and getevent, batches thousands of lines a second without
janking the UI, filters by level and saves to a file. The terminal is a full-height shell surface
with a real prompt, scrollback, ↑/↓ history, Tab completion for adb/fastboot verbs and Ctrl+C that
stops the running command instead of the window.
Android 11+ can pair without typing a code. ADB over network → QR renders the official
WIFI:T:ADB;S:<service>;P:<password>;; payload; scan it with Pair device with QR code, and the
app discovers the new endpoint over mDNS, pairs, connects and refreshes the device list. Manual
ip:port connect, adb tcpip, IP history and readable failure hints are all there too.
- Device info in system and fastboot modes, per user, with a multi-device selector.
- Permissions: inspect, grant and revoke runtime permissions; set default app roles.
- Screen and camera mirroring through scrcpy, with encoder discovery and a visible download.
- Bootloader tools: unlock, lock, OEM device-info and the current state of the unit.
- Task manager: what is running, and one click to stop it.
- Eight languages — English, Italian, Spanish, German, French, Portuguese, Russian, Chinese —
switchable at runtime; drop a JSON file in
locales/to add your own. - Dark, light or system theme, applied before the first paint and mirrored onto the native window and every detached window.
- Portable build:
config.json, locales and downloads live next to the executable, so the whole thing travels on a USB stick.
| Nothing blocks the UI | every adb/fastboot call is spawned off the main thread |
| Every long job is cancellable | installs, pushes, flashing and extractions run through a guarded wrapper with a watchdog, drained pipes and a process-tree kill |
| One row per phone | the same device seen over cable, ip:port and mDNS is collapsed by ro.serialno |
| It remembers its window | size, position and maximised state, clamped to the 1040×720 minimum |
| One instance, no consoles | a second launch focuses the running window; no console flashes for child tools |
| Strict CSP | the webview only loads bundled assets |
| Platform | Recommended | Also provided |
|---|---|---|
| Windows 10/11 x64 | ATA-GUI_<version>_x64-setup.exe (per-user NSIS) |
.msi, portable .zip |
| Linux x64 | .AppImage or .deb |
.rpm, portable .tar.gz / .zip |
| macOS 10.15+ | .dmg (Apple silicon) |
portable .zip containing ATA-GUI.app |
Downloads are on the releases page. Portable builds
are self-contained; the Windows .zip keeps ATA-GUI.exe at its root so the 3.x in-place updater
still works.
Platform notes, the portable layout, macOS quarantine and the 3.x upgrade path:
docs/INSTALL.md.
Node 22+, Rust 1.80+ and the platform toolchain (MSVC on Windows, GTK/WebKit on Linux).
npm ci
npm run desktop:dev # Tauri window with hot reload
npm run build # type-check + bundle the frontend
npx tauri build # app + installers
npm run package # release/: portable archive + installers, in publish order
npm run check:locales # catalogue parity, duplicates and dead keysPrerequisites per platform, the test suite and CI: docs/BUILD.md.
| Document | Contents |
|---|---|
docs/FEATURES.md |
the full tour: every panel, behaviour and shortcut |
docs/INSTALL.md |
bundles, portable config, macOS, upgrading from 3.x, updates |
docs/BUILD.md |
prerequisites, development loop, tests, packaging |
docs/RELEASING.md |
versioning, tag workflow, the release asset contract |
docs/ARCHITECTURE.md |
source tree, process layer, conventions |
docs/TRANSLATIONS.md |
adding or overriding a language |
docs/PORTING.md |
mapping from the WinForms forms |
CHANGELOG.md |
release notes |
The 3.x C# sources are on the legacy branch; main is the Tauri rewrite.
Massimiliano Sartore · icons by Tabler Icons (MIT) · debloat list by the Universal Android Debloater Alliance · screen mirroring by scrcpy · powered by SDK Platform Tools.
Apache-2.0 — see LICENSE.



