The download manager that actually gets out of your way.
HTTP, torrents, videos from 1,462+ sites, music, debrid — all in one beautiful native app.
Quick Start · Features · Screenshots · Browser Extension · FAQ
curl -fsSL https://raw.githubusercontent.com/swadhinbiswas/ZenDownload/main/scripts/install.sh | bashInstalls the latest AppImage, system dependencies, desktop entry, and zendown:// protocol handler. Done.
| Platform | Get it |
|---|---|
Download .msi or .exe from Releases |
|
Download .dmg from Releases (Apple Silicon + Intel) |
|
Grab the .AppImage, .deb, or .rpm from Releases |
|
git clone https://github.com/swadhinbiswas/ZenDownload.git
cd zendownload
bun install
bun run tauri dev # dev with hot reload
bun run tauri build # production build |
|
Multi-protocol |
Streaming media |
|
Multi-threaded HTTP |
Smart URL routing |
|
Torrent engine |
Debrid services |
|
HLS / DASH / M3U8 |
Music downloader |
Active queue with multi-protocol downloads, live stats, and per-file controls.
Stream while seeding — full librqbit engine with peer management.
Batch import, site grabber, full-site grabber, and stream detection.
Search YouTube and SoundCloud, download with full ID3 metadata and cover art.
IPTV channels, RSS feeds, and automated profiling rules.
12 accent colors, glass effects, adjustable corner radius — make it yours.
Floating download button and captured media panel on any website.
The companion extension makes ZenDownload aware of every video, audio, and download link on every page you visit.
Install: load extension/ as an unpacked extension in Chrome / Edge / Brave / Firefox.
What it does:
Floating button on any
<video>or<audio>— hover, click, sent to desktopQuality picker — pick 4K, 1080p, 720p, or audio-only before downloading
Network sniffing — captures streaming media URLs from page requests
Shadow DOM traversal — works with Video.js, JW Player, Plyr, embedded players
zendown://protocol — one-click send with full metadata (cookies, format, page URL)Right-click menu — "Download with ZenDownload" on links, images, videos, audio
Captured media panel — see all detected URLs on the page, filter and download all
How it works:
Browser page ──► Content script detects media
│
├─► Floating button (hover <video>/<audio>)
├─► Link panel (all <a href> on page)
└─► webRequest sniffer (auto-detect)
│
▼
background.js
│
├─► Native messaging (com.zendownload.host)
└─► HTTP POST → localhost:9527/api/downloads
│
▼
ZenDownload queue
Extend ZenDownload without forking it. Plugins are JSON manifests with optional frontend assets — drop them in the plugins folder or install from the in-app Plugin Store.
{
"id": "discord-webhook",
"name": "Discord Notifier",
"version": "1.0.0",
"plugin_type": "webhook",
"hooks": ["download.complete"],
"config": { "webhook_url": "" },
"icon": "🔔",
"category": "notification"
}Hook-based events: download.start, download.complete, download.error, url.extract, file.postprocess, clipboard.detect
UI plugins can register sidebar entries and render custom pages (radio, RSS reader, media player, notes, etc.).
See docs/PLUGIN_DEVELOPMENT.md for the full guide.
"Replaced IDM, JDownloader, and qBittorrent in one go. The browser extension alone is worth it."
"Watched a 4K YouTube video get downloaded and organized into my Movies folder while I made coffee."
"The clipboard monitor caught a magnet link I'd forgotten I'd copied. It just appeared in the queue."
"Torrents stream before they finish downloading. Genuinely didn't know I needed this."
How is this different from IDM / JDownloader?
ZenDownload is a native desktop app (Tauri 2, not Electron), has built-in torrent streaming, supports 1,462+ streaming sites via yt-dlp, and ships a browser extension with universal video detection and quality selection — all in a modern dark UI.
Does it support magnet links?
Yes. Paste a magnet link and the engine resolves it via DHT/trackers. Sequential streaming playback is built in.
Can I use Real-Debrid / AllDebrid / Premiumize?
Yes. Add your API key in Advanced Settings. Premium links auto-resolve before queuing.
Why are speeds lower than my connection's max?
The default is 3 concurrent downloads × 8 connections each. Use the built-in Speed Test to confirm your baseline, then tune in Connection Settings.
How does the zendown:// protocol work?
The browser extension builds a URL like zendown://add?url=...&cookies=...&format=... and opens it. The desktop app receives it directly — no REST API roundtrip, no copy-paste.
Does it work offline?
Once installed, the desktop app works fully offline. yt-dlp updates, RSSHub routes, and YouTube channel subscriptions need network access.
Is my data private?
Everything is local. No telemetry, no analytics, no cloud accounts. The app talks to the internet only when you download something.
Can I theme it?
12 accent colors, 3 background densities, adjustable corner radius, font size presets, compact mode. Plus full dark/light theme support.
Pull requests, bug reports, and feature ideas are all welcome. See CONTRIBUTING.md for the workflow.
Plugin authors — the Plugin Store is open. Ship something useful and we'll feature it.
MIT © swadhinbiswas