A desktop app for grabbing video/audio from the web and organizing it for editing. Paste a link, preview it, mark the exact In/Out you want, and download just that piece β optionally converted into an edit-friendly format and filed into a tagged, searchable library.
Built for video editors and content creators, but simple enough for anyone who just wants to save clips.
π§π· Media Hub tambΓ©m fala portuguΓͺs β troque o idioma no seletor no canto superior direito do app.
- Platforms: Windows & macOS
- Under the hood: Tauri 2 (Rust) + React/TypeScript, SQLite, and yt-dlp + ffmpeg.
- Open source, no account, no telemetry, nothing leaves your computer.
- What can it do?
- Download & install
- First launch
- How to use it (2-minute tour)
- Keeping it updated
- Browser extension (optional)
- Common questions & fixes
- Privacy
- For developers
- License
- β¬οΈ Download video or audio (MP3 / M4A / FLAC) from YouTube, Twitter/X, Reddit, Pinterest, Instagram, TikTok, and hundreds of other sites.
- βοΈ Trim before you download β a built-in player lets you mark exact In/Out points (even multiple segments) and grab only what you need.
- ποΈ Chapters & preview scrubbing β jump to YouTube chapters, hover-scrub a filmstrip, and step frame-by-frame to find the perfect cut.
- π Convert for editing (optional) β transcode to ProRes, DNxHR, or H.264 so clips drop straight onto a Premiere/Resolve/FCP timeline.
- ποΈ A real library β tags, nestable colored folders, projects, full-text search, duplicate detection, and a recoverable Trash.
- π Playlists & batch β queue a whole playlist or a list of URLs at once.
- π Browser extension β send a video from your browser with one click.
- π Private by design β everything runs locally; the app phones home to nobody.
Grab the latest installer from the Releases page.
- On the Releases page, download the file ending in
.msi(or the.exesetup) β e.g.Media.Hub_x.y.z_x64-setup.exe. - Double-click it to run the installer.
- Windows may show a blue "Windows protected your PC" screen. This is
normal for apps from independent developers (the app isn't code-signed with
an expensive certificate). To continue:
- Click "More info"
- Click "Run anyway"
- Click through the installer (Next β Next β Finish). A Media Hub shortcut appears in your Start menu.
That's it. Open it from the Start menu.
- Download the
.dmgfrom the Releases page. - Open it and drag Media Hub into your Applications folder.
- The first time you open it, macOS may say it "cannot be opened because it is
from an unidentified developer." To get past this:
- Right-click (or Control-click) the app β Open β Open again.
- You only have to do this once.
The very first time you open Media Hub, two things happen:
- A quick setup wizard (~1 minute) walks you through picking where your files are saved and a couple of defaults. You can change all of it later in Settings, so don't overthink it.
- It downloads its media tools (the ffmpeg + audio-processing engines, ~1β2 min on a normal connection). This keeps the installer small and only happens once. If it stalls, it's almost always a firewall/VPN blocking the download β try again on a normal connection.
When both are done, you're on the Library screen, ready to go.
To download something:
- Click Download in the left menu (or press
1). - Paste a video URL and click Fetch. The app loads the video's info.
- (Optional) Use the preview player to mark the exact part you want:
press
Ito mark the start,Oto mark the end. Skip this to get the whole thing. - Pick a quality (or leave it on Best) and click Download.
- When it finishes, your clip is in the Library (press
2), with a thumbnail, ready to drag into your editor.
A few things worth knowing:
- Library vs. Projects β the Active dropdown at the top decides where downloads go. Library = your permanent stash. A Project = a temporary bucket for one job that you can clean up when you're done.
- Cookies / sign-in β if a video says "sign in" or "confirm you're not a bot," go to Settings β Sources and point the app at your browser's login. You only need this for age-restricted / private / members-only videos.
- Converting (transcode) is off by default β most people don't need it. Turn it on in Settings only if your editing app struggles with the raw file.
- The
?icons next to some settings β hover them for a plain-language explanation, or click for the full guide. There's also a full Help/Manual built into the app (bottom of the left menu).
Media Hub checks for updates automatically. When a new version is available, it downloads in the background and applies the next time you fully quit and reopen the app.
- To force it: fully quit the app (also check the system tray β it can keep running there in the background β and choose Quit), then reopen.
- You can always just download the latest installer from the Releases page and install over your current version. Your library and settings are kept.
A companion browser extension adds a "Send to Media Hub" button so you can push a video from your browser straight into the app's download queue β no copy-pasting URLs.
It's optional. Everything works from the app without it. And it only talks to your own computer β nothing is sent over the internet.
Install it (Chrome / Edge / Brave):
- Download/clone this project so you have the
extensionfolder on disk. - Open a new tab and go to
chrome://extensions(on Edge:edge://extensions, on Brave:brave://extensions). - Turn on "Developer mode" (top-right toggle).
- Click "Load unpacked" and select the
extensionfolder. - Pin the new Media Hub icon from the toolbar's puzzle-piece menu π§©.
Firefox: go to about:debugging β This Firefox β Load Temporary
Add-on β pick manifest.json inside the extension folder. (Firefox
forgets temporary add-ons when you close it, so you'd re-add it each session β
Chrome/Edge/Brave is smoother for daily use.)
Pair it with the app (one time):
- In Media Hub: Settings β Browser bridge β Copy token.
- In the browser: click the Media Hub extension icon β Options, paste the token, click Save, then Test connection. A green "Connected" message means you're set. (The desktop app must be open.)
Using it: click the toolbar icon and pick Video/MP3/M4A/FLAC, hover a video
on Twitter/Reddit for an in-page button, or use the shortcuts Ctrl+Shift+Y
(video) / Ctrl+Shift+M (MP3). Full guide + troubleshooting:
extension/README.md.
A download failed / "video unavailable" / "sign in required". The video probably needs a login. Go to Settings β Sources and point the app at your browser's cookies. If it still fails, the site may have changed β updating to the latest app version (which ships a newer downloader) usually fixes it.
Windows blocked the installer ("Windows protected your PC"). Normal for indie apps. Click More info β Run anyway (see Windows install).
Converting/preview suddenly stopped working. The media tools may be missing/corrupted. Settings β Diagnostics β Repair tools re-downloads them.
The preview is slow to seek. Lower Preview quality in Settings; also, the first seek on a new video has to fetch a small preview copy, so give it a moment.
Downloads are slow. Turn on Fast downloads in Settings β Downloads (great for big files).
A clip says "file not found." Its file was moved or deleted outside the app. Re-download it, or use "Reveal in file manager" to see where it went.
Where are the logs (for a bug report)?
Settings β Diagnostics β Open logs folder (media-hub.log).
How do I report a bug well? Include what you did + what happened, the exact URL, your app version (Settings β About) and OS, a screenshot of the error, and β most importantly β the log file above. There's a fuller checklist in the in-app Help.
- Media Hub runs entirely on your machine. It does not send your activity, URLs, or library to us or anyone else.
- It reaches the internet only to download the videos you ask for, to fetch its media tools on first run, and to check for app updates.
- The browser extension talks only to your own computer (
127.0.0.1) and only when you click a button.
Media Hub is a Tauri 2 app: a Rust core + a React + TypeScript (Vite) frontend, an SQLite library, and yt-dlp / ffmpeg / deno as helper binaries the app fetches on first run.
Requirements:
- Node.js 20+
- Rust (stable) β install via rustup
- Windows: Visual Studio C++ Build Tools ("Desktop development with C++")
- macOS: Xcode Command Line Tools (
xcode-select --install)
# 1. Install JS dependencies
npm install
# 2. Fetch the sidecar binaries (yt-dlp + ffmpeg; gitignored)
pwsh scripts/fetch-sidecars.ps1 # macOS: bash scripts/fetch-sidecars-mac.sh
# 3. Run in dev mode (the FIRST Rust build takes several minutes)
npm run tauri devThe first cargo build compiles a few hundred dependencies β slow once, then
incremental and fast.
npm run tauri build # output in src-tauri/target/release/bundleReleases are tag-driven: pushing a v* tag triggers GitHub Actions to build
Windows + macOS, sign the auto-updater artifacts, and draft a release.
npx tsc --noEmit # frontend type-check
cargo test --manifest-path src-tauri/Cargo.toml # Rust unit testsmedia-hub/
βββ src/ React + TypeScript frontend
β βββ pages/ Download, Library, Projects, Settings, Help
β βββ components/ Scrubber, Onboarding, HelpHint, β¦
β βββ lib/ settings, downloads, types, i18n, helpContent, β¦
βββ src-tauri/ Rust backend (Tauri)
β βββ src/ Rust source (lib.rs wires the command modules)
β βββ binaries/ Bundled sidecars (gitignored β fetch via script)
β βββ tauri.conf.json Window + bundle config
βββ extension/ MV3 browser extension (no build step)
βββ scripts/ Dev scripts (sidecar fetch, smoke test)
βββ docs/ ARCHITECTURE, ROADMAP, NOTES, MANUAL β read first
docs/ARCHITECTURE.mdβ how the pieces fit.docs/MANUAL.mdβ the full user manual (mirrors the in-app Help), incl. a "For developers" section on adding commands, the extension, i18n, and the(?)-hint system.docs/NOTES.mdβ dated working notes, gotchas, and rationale.
Contributions welcome β keep changes focused, run the checks above, and describe what changed and why. Not a coder? Clear bug reports (with the log file) and testing releases genuinely help.
Media Hub is released under the MIT License β free to use, modify, and distribute.
It uses yt-dlp, ffmpeg, and deno as separate helper binaries, each under its own license (The Unlicense, LGPL/GPL, and MIT respectively). They are downloaded on first run, not bundled into this repository.