ADBKit
A simple, modern GUI for ADB, Fastboot and Scrcpy
A simple, modern GUI for ADB, Fastboot and Scrcpy
A modern, unified desktop GUI for ADB, Fastboot, and scrcpy — built with Wails v2 (Go + React) for native performance and lightweight resource usage.
Android device management, visualized. From flashing ROMs to mirroring screens, ADBKit brings every terminal-heavy workflow into one structured desktop app.
Dashboard
Device Manager
App Manager
File Explorer
Flasher
fastboot continue to exit the bootloader hands-free)Terminal
Scrcpy Hub
Binary Manager
Setup Wizard
Settings & Auditability
Screenshots of each module are available in here.
Download and run ADBKit.exe; no installer is required. Windows 11 normally
includes Microsoft Edge WebView2 Runtime. On Windows 10 or managed machines,
install the Evergreen WebView2 Runtime before launching ADBKit if the app does
not start. Managed binaries and configuration are stored in
%APPDATA%\adbkit\.
Note: ADBKit requires ADB, Fastboot, and scrcpy binaries. The Setup Wizard will guide you through detection or download on first launch. All three are required — scrcpy is not optional.
ADBKit manages binaries through a detection-first approach:
| Priority | Method | Description |
|---|---|---|
| 1 | Config path | Previously saved custom path |
| 2 | System PATH | exec.LookPath() discovery |
| 3 | Managed package | Downloaded via Setup Wizard |
| 4 | Common paths | OS-specific default locations |
Managed download preserves the full release archive structure:
~/.local/share/adbkit/bin/
├── platform-tools/
│ ├── adb
│ ├── fastboot
│ ├── lib64/
│ ├── source.properties
│ └── ...
└── scrcpy/
├── scrcpy
├── scrcpy-server
├── scrcpy.1
└── ...
Standalone executables are not extracted. Supporting files (lib64, scrcpy-server, etc.) are required for full functionality.
| Layer | Technology |
|---|---|
| Core | Wails v2 |
| Backend | Go 1.23 — Domain-package architecture (internal/<domain>/) |
| Frontend | React 19 + TypeScript |
| Build | Vite 8 + Bun |
| State | Zustand + TanStack React Query v5 |
| UI | shadcn/ui (base-rhea) + Tailwind CSS v4 |
| Animation | motion (single engine, no GSAP/Lenis) |
| Icons | Lucide React |
| Toast | Sonner |
| Command Palette | cmdk |
| Virtualization | TanStack Virtual v3 |
| Charts | Recharts |
| Validation | Zod |
Prerequisites: Go 1.25+, Bun, Wails CLI
A Makefile wraps the common workflows. Run make (or make help) to list all targets.
# Check that required tools are installed (go, wails, bun, adb, ...)
make doctor
# Install Go + frontend dependencies
make deps
# Development (hot reload)
make dev
# Production build
make build # -> build/bin/ADBKit
make build-upx # UPX-compressed build
# Build then run the binary
make run
# Quality
make lint # frontend lint
make typecheck # frontend typecheck
make check # lint + typecheck
# Packaging (Linux)
make deb rpm arch appimage # individual packages
make all # all packages -> dist/
Manual (without make)# Install frontend dependencies
cd frontend && bun install && cd ..
# Development
wails dev
# Production build
wails build
# Frontend typecheck
cd frontend && bun run typecheck
# Frontend lint
cd frontend && bun run lint
# Go tests
go test ./...
| Issue | Fix |
|---|---|
| Device not found | Enable USB Debugging in Developer Options; install required USB drivers |
| Unauthorized device | Accept the RSA fingerprint prompt on your device screen |
| Wireless ADB not working | Ensure device and computer are on the same network; check IP/port |
| Linux USB access denied | Configure udev rules for your device vendor |
| Windows app does not open | Install or repair Microsoft Edge WebView2 Runtime, then launch ADBKit.exe again |
| scrcpy exits immediately | Check if scrcpy-server exists in the scrcpy package folder; re-download if missing |
| Binary shows "Invalid path" | Binary may be incomplete; re-download via Settings → Binary Manager |
| Setup wizard won't finish | All three binaries (ADB, Fastboot, scrcpy) must be ready — none can be skipped |
| Flash operation fails | Ensure device is in Fastboot mode; verify partition name is valid |
Contributions are welcome — open an issue or submit a pull request.
MIT