DEV Community

Khoa.Vo
Khoa.Vo

Posted on

Building a Mobile-First Social Media Video Downloader with Go and yt-dlp

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 (go binary, ffmpeg, and yt-dlp) pre-installed.

🚀 Quick Start with Docker

docker run -d \
  --name kv-download \
  -p 8080:8080 \
  vndangkhoa/kv-download:latest
Enter fullscreen mode Exit fullscreen mode

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)