Skip to content
 
 

Repository files navigation

ReClip (Reslopped)

A self-hosted, open-source video and audio downloader with a clean web UI. Paste links from YouTube, TikTok, Instagram, Twitter/X, and 1000+ other sites — download as MP4 or MP3.

Bun TypeScript License

preview.mp4

ReClip MP3 Mode

Features

  • Passkey authentication (WebAuthn) with biometric unlock support
  • Download videos from 1000+ supported sites (via yt-dlp)
  • MP4 video or MP3 audio extraction
  • Quality/resolution picker
  • Bulk downloads — paste multiple URLs at once
  • Automatic URL deduplication
  • Clean, responsive UI — no frameworks, no build step
  • TypeScript backend — no compilation step (runs directly with Bun)

Quick Start

brew install yt-dlp ffmpeg    # or: apt install ffmpeg && curl -fsSL https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && chmod +x /usr/local/bin/yt-dlp
brew install bun              # or: curl -fsSL https://bun.sh/install | bash
git clone https://github.com/averygan/reclip.git
cd reclip
./reclip.sh

Open http://localhost:8899.

On first launch, you'll be prompted to create a passkey. After that, login is required to access downloads and API endpoints.

Or with Docker:

docker build -t reclip . && docker run -p 8899:8899 reclip

Or with Docker Compose (persists passkeys in .config):

docker compose up --build -d

Authentication

ReClip now requires passkey login.

  • First run: register the first passkey for this server instance
  • Later runs: sign in with your passkey (Face ID, fingerprint, device PIN, etc.)
  • Protected routes: all download/info API routes require an authenticated session

Passkey storage is persisted in .config/passkey.json.

Environment Variables

  • AUTH_RP_NAME (default: ReClip)
  • AUTH_RP_ID (optional override; default derives from request hostname)
  • AUTH_ORIGIN (optional override; default derives from request origin)

For biometrics on phones and cross-device passkeys, use HTTPS with a stable domain and set AUTH_ORIGIN/AUTH_RP_ID accordingly.

When ReClip is behind a reverse proxy that terminates TLS, it will use Forwarded, X-Forwarded-Proto, and X-Forwarded-Host headers to reconstruct the browser-facing origin automatically. If your proxy does not send those headers, set AUTH_ORIGIN=https://your-domain and AUTH_RP_ID=your-domain explicitly.

Usage

  1. Paste one or more video URLs into the input box
  2. Choose MP4 (video) or MP3 (audio)
  3. Click Fetch to load video info and thumbnails
  4. Select quality/resolution if available
  5. Click Download on individual videos, or Download All

Supported Sites

Anything yt-dlp supports, including:

YouTube, TikTok, Instagram, Twitter/X, Reddit, Facebook, Vimeo, Twitch, Dailymotion, SoundCloud, Loom, Streamable, Pinterest, Tumblr, Threads, LinkedIn, and many more.

Disclaimer

This tool is intended for personal use only. Please respect copyright laws and the terms of service of the platforms you download from. The developers are not responsible for any misuse of this tool.

License

MIT

About

Download videos from almost any website. Lightweight, self-hosted media downloader with a clean web UI.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages