Grabbit is a powerful, modern desktop download manager and BitTorrent client built to deliver raw speed, rich telemetry, and complete control over your downloads. Powered by multi-threaded HTTP chunk acceleration and an integrated WebTorrent protocol engine, Grabbit handles direct downloads, torrent files, and magnet URIs with dark-mode aesthetic.
- Multi-Chunk Acceleration: Splits large HTTP/HTTPS downloads into up to 32 parallel worker threads to saturate your internet bandwidth.
- Native WebTorrent BitTorrent Engine: Full BitTorrent protocol support for magnet URIs (
magnet:?xt=) and.torrentfiles with DHT, PeX, and LSD peer discovery. - Top 24 Swarm Supervisor: Evaluates real piece overlap and sustained throughput to lock onto the fastest seeders while cycling DHT/PEX slots.
- BEP 10 Extended Handshake & Swarm Client Decoding: Real-time identification of P2P swarm peer client software (qBittorrent, µTorrent, Transmission, Deluge, WebTorrent, Vuze, BiglyBT, Grabbit) with dynamic Azureus Peer ID decoding.
- Dynamic Client Identification: Broadcasts native client identity (
Grabbit v0.3.0/-GR0300-) automatically mapped topackage.jsonsemver. - Dedicated Diagnostic Inspector: Independent diagnostic tabs for Peers (BitTorrent P2P swarm wires) and Threads (HTTP multi-thread chunk split visualizer).
- Task & File Removal Confirmation Modal: Contextual confirmation popup when deleting tasks, offering Remove Task Only (keep downloaded files) or Remove Task & Delete Files (permanently delete files from disk).
- Two-Step Torrent Import Flow: Interactive source picker with drag-and-drop zone, file browser, and magnet link parser, advancing directly to a 2-column options panel.
- Dedicated Modal UI: Purpose-built distinct popups for Normal Downloads and Torrent Downloads featuring dark-themed fieldsets and custom focus glows.
- In-App Media Stream Player: Built-in video/audio stream player and live playback for streaming video and audio files before torrent downloads complete.
- Dynamic Trackers & Swarm Telemetry: Live peer wire inspection (IP address, port, client ID, choke status), custom announce tracker management, and piece-level progress maps.
- Granular File Selection & Priorities: Choose individual files within multi-file torrents and adjust per-file priorities (
High,Normal,Low,Skip / Don't Download). - Automatic Clipboard Detector: Instant 1-click Add Download notification whenever a URL or magnet link is copied.
- Home Dashboard Control: Monitor recent tasks, track aggregate transfer metrics, and manage task actions directly from the home view.
- Smart Anti-Lag (QoS): Dynamic bandwidth throttle to prevent ping spikes during gaming or video calls.
- Export & Import Queues: Export
.torrentfiles or save full queue state to JSON to transfer tasks across machines. - File Integrity Verification: Built-in SHA-256, SHA-512, and MD5 verifiers to ensure downloaded files are untouched.
| Layer | Technology |
|---|---|
| Desktop Framework | Electron v43 |
| BitTorrent Engine | WebTorrent v3 |
| Frontend Framework | React v19 |
| Language | TypeScript v7 |
| Styling | Tailwind CSS v4 |
| Typography | Sora & Inter (Google Fonts) |
| Build & Bundler | electron-vite + Vite v8 |
| Runtime & Package Manager | Bun |
| Icons | Lucide React |
Ensure you have Bun installed on your system.
-
Clone the repository:
git clone https://github.com/HawkdotDev/grabbit.git cd grabbit -
Install dependencies:
bun install
-
Start Development Server:
bun run dev
To package the desktop application for production:
# Typecheck & Code Formatting
bun run typecheck
bun run format
# Build Production Binaries
bun run buildProduction executables will be generated inside the dist/ directory.
This project is licensed under the Apache-2.0 License - see the LICENSE file for details.
Developed by HawkdotDev.
