ytmp4

A simple, ad-free, self-hosted short-form video downloader for YouTube, Instagram, and TikTok.

This app was vibe coded with manual tweaks and prompt engineering to get the desired result — no bloat, no ads, just paste a link and download.

Quick Start

Deploy on any machine (no source code needed)

curl -O https://raw.githubusercontent.com/eef-g/ytmp4/master/deploy.sh
chmod +x deploy.sh
./deploy.sh

The script installs Docker if missing, pulls the pre-built images from GHCR, and starts the app.

Build from source

git clone https://github.com/eef-g/ytmp4.git
cd ytmp4
docker compose up --build

Open http://localhost:8080, paste a link, and download.

Supported Platforms

Platform Example URLs
YouTube youtube.com/watch?v=..., youtu.be/..., youtube.com/shorts/...
Instagram instagram.com/reel/..., instagram.com/p/...
TikTok tiktok.com/@user/video/...

Configuration

Copy .env.example and adjust as needed:

Variable Default Description
PORT 8080 Frontend port
CLEANUP_INTERVAL_MINUTES 60 Auto-delete downloaded files after this interval
MAX_CONCURRENT_DOWNLOADS 3 Max parallel downloads

How It Works

  1. Paste a video URL into the web UI
  2. Backend queues a download job using yt-dlp
  3. Real-time progress streams to the browser via SSE
  4. Download the MP4 when it's ready

Files are automatically cleaned up on a configurable interval so the server doesn't fill up.

Top categories

Loading Svelte Themes