Skip to content

waynekosterjr-hub/reclip

 
 

Repository files navigation

ReClip Local Media Engine 🎧

Fast, private media downloads on Android.
Paste or share links, fetch metadata, choose quality, and download on-device.

Android Engine Desktop Mode License

✨ Why ReClip

  • ⚡ Instant fetch + local processing
  • 🔒 On-device workflow (privacy-first)
  • 🎵 Pro audio profiles (MP3/FLAC options)
  • 🎬 Video quality selection with saved preference
  • 🖥️ Desktop Mode (phone-hosted over LAN)
  • 📥 Unified download history across UI surfaces
  • 🧪 Runtime diagnostics for engine transparency

🚀 What It Supports

  • YouTube + YouTube Music
  • Spotify (with native entitlement gating)
  • TikTok, Instagram, X/Twitter, Reddit, Twitch, Vimeo, SoundCloud
  • Additional sources supported by yt-dlp

🧠 Core Architecture

  • Android host app: Java/Kotlin + WebView UI
  • Media engine: Python (yt-dlp) + bundled ffmpeg/ffprobe
  • Billing/entitlements: RevenueCat (native-enforced)
  • Desktop Mode: local HTTP server + PIN pairing

🛠️ Build (Windows)

.\gradlew.bat :app:assembleDebug
.\gradlew.bat :app:installDebug

Wireless ADB install:

adb devices -l
adb -t <transport_id> install -r app\build\outputs\apk\debug\app-debug.apk

🧪 Beta Releases

  • ReClip Beta is published via GitHub Pre-release.
  • Workflow: .github/workflows/beta-release.yml
  • Tag pattern: v*-beta.* (example: v1.1.0-beta.1)
  • Attached artifacts:
    • ReClip-beta-debug.apk
    • ReClip-beta-release-unsigned.apk
  • Release notes are required to be concrete (no placeholder sections) for each beta tag.

✅ Quick Validation

  1. Paste/share URL and verify auto-fetch.
  2. Confirm quality/profile selection.
  3. Start download and verify progress + completion.
  4. Verify file in Downloads\ReClip.
  5. Open Runtime Status and confirm engine health.

📂 Key Files

  • Android entry: MainActivity.java
  • Desktop server: DesktopServerManager.java
  • Desktop UI: desktop.html
  • Mobile UI: index.html
  • Engine: reclip_engine.py

📝 Release Workflow Note

Before each push, refresh this README summary to reflect:

  • latest UX changes,
  • supported flows,
  • build/install status,
  • any new Settings/Desktop behavior.

That keeps Android-Release branch docs aligned with shipped behavior.

Material product changes that touch UI, runtime/server, engine, or billing paths are expected to include a README update. This is enforced by .github/workflows/readme-policy.yml.

Current beta hardening focus includes Desktop Mode session resilience, deterministic destination behavior, and canonical native history sync across phone and desktop surfaces.

About

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

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • HTML 53.6%
  • Java 25.6%
  • Python 14.2%
  • Kotlin 4.3%
  • Shell 2.2%
  • Dockerfile 0.1%