Building a Mobile-First Social Media Video Downloader with Go and yt-dlp
Downloading videos from platforms like TikTok, YouTube, Instagram Reels, and Twitter/X on a mobile device is notoriously painful. Most public downloader websites are loaded with deceptive popups, malware redirect ads, and arbitrary file size limits.
I wanted a clean, self-hosted web tool that I could pin to my phone's home screen as a Progressive Web App (PWA) to grab videos cleanly in one tap.
That led to KV-Download: a mobile-friendly media downloader powered by Go 1.24+ and yt-dlp.
🎬 Key Features
- 📱 Mobile-First UX: Designed from the ground up for phone viewports with clean touch targets, swipe actions, and one-tap clipboard pasting.
- ⚡ High-Concurrency Go Engine: Uses Go routines to handle parallel downloads, format resolution, and stream chunking with minimal memory overhead.
- 🌐 Multi-Platform Support: Downloads from hundreds of video platforms supported by
yt-dlp(TikTok, YouTube Shorts, Reddit, Instagram, X/Twitter, Vimeo). - 🚫 100% Ad-Free & Private: Zero tracking scripts, zero popups, and no cookies stored on third-party servers.
- 📦 Single Docker Container: Ships with all required dependencies (
gobinary,ffmpeg, andyt-dlp) pre-installed.
🚀 Quick Start with Docker
docker run -d \
--name kv-download \
-p 8080:8080 \
vndangkhoa/kv-download:latest
Open http://<your-server-ip>:8080 on your phone, tap "Add to Home Screen", and enjoy seamless video downloads on the go!
🔗 Check it Out on GitHub
KV-Download is open-source under the MIT license:
⭐ GitHub Repository: https://github.com/vndangkhoa/kv-download
🐳 Docker Hub: vndangkhoa/kv-download
Top comments (0)