An open-source media downloader for Linux, Windows, macOS and Android, built from one Flutter codebase, with its own bilingual landing site.
Open source · GPL-3.0Paste a link from YouTube, Instagram, TikTok, SoundCloud, Vimeo or about a thousand other sites, pick video or audio and a quality, and Snag handles the rest: queue, progress, retries and a searchable library.
What I built#
- One engine, two backends. A Dart engine drives the official yt-dlp binary on desktop. On Android a Kotlin bridge runs it through youtubedl-android. yt-dlp prints machine-readable progress, so one parser serves every platform.
- Self-managing dependencies. On desktop, first run fetches yt-dlp, ffmpeg and Deno, then keeps yt-dlp up to date.
- English and Persian. Full right-to-left layout, Persian digits and Jalali dates, and any community translation file shows up in the language picker automatically.
- Tested for real. Unit tests, plus end-to-end tests that install the real tools, download a video, convert it to MP3 and cancel a job.
- The website. A static, bilingual landing page with real screenshots, structured data and social cards, deployed on GitHub Pages.

Stack: Flutter, Dart, Kotlin, yt-dlp, ffmpeg, GitHub Actions, GitHub Pages