Skip to content
Joel Wilson
All projects

Media Downloader

A self-hosted web app that wraps yt-dlp. Paste a link and the file goes into a media library like Jellyfin, to the device you're browsing from, or both. Downloads run on the server with live progress, so you can close the tab and check in from any other device.

Date
Category
Personal
Role
Design and development
Built with
TypeScript, React, Bun, Fastify, Tailwind CSS, Docker, yt-dlp
  • Playlists, channels and albums expand on the server, up to 1,000 items, each saved into its own folder
  • Queue with live progress over Server-Sent Events, plus cancel, retry, trim and rename
  • Hooks after each download: Slack messages, webhooks and private TikTok uploads
  • Docker image rebuilt on every push and weekly, and yt-dlp updates itself daily
Screenshot of Media Downloader

Have a project in mind?

Tell me a little about your organization and what the site needs to do. Email is the best way to reach me.

What to include