Skip to content

yt2mp

A clean, ad-free YouTube → MP3 / MP4 downloader. The actual downloading runs as a Windows desktop app on your own computer — no shared server, no upload limits, no ads.

  • Paste a link (single video or playlist) — or switch to AI search and describe what you want instead of finding a link.
  • Pause, resume, or stop any download mid-transfer.
  • No account, no server-side memory limits, no shared IP for YouTube to flag.

This repo has two independent parts:

  • Root (this directory): a small Next.js landing page, deployed to Render. It only describes the project and links to the desktop app download — it does no downloading itself.
  • app-tauri/: the Tauri desktop app that does the actual work. See app-tauri/README.md for how it's built, what's bundled, and how AI search is configured.

Download

  • Latest release — grab the Windows installer (yt2mp_x.y.z_x64-setup.exe) and run it. The app updates itself from then on.
  • Linux: yt2mp_x.y.z_amd64.AppImage from the same release.

⚠️ Disclaimer — use at your own risk

This is free, open-source software provided "as is", without any warranty (see the license). By downloading, building, or using it you agree that:

  • You are solely responsible for how you use this tool and for any content you download with it.
  • Downloading content from YouTube may violate YouTube's Terms of Service. Only download content you have the right to (e.g. your own uploads, public-domain, Creative Commons, or material you're otherwise permitted to save). Respect copyright law in your country.
  • The authors and contributors are not liable for any misuse, data loss, account action, legal consequence, or damage arising from the use of this software.

This project is intended for personal use — for example saving your own videos or content you're allowed to keep offline. It is not intended to facilitate copyright infringement.

🛡️ Virus scan

Every release installer is scanned before publishing. The installer bundles yt-dlp and ffmpeg — both well-known open-source tools — but because it's an unsigned .exe that spawns those binaries, some antivirus engines may flag it heuristically (a false positive common to yt-dlp wrappers).

  • MetaDefender Cloud: pending re-scan for the current release — check the SHA256 on the latest release page against what you downloaded in the meantime.
  • VirusTotal: coming soon

If your browser or Windows SmartScreen warns about the download, that's the unsigned-exe warning — you can verify the file yourself with the scan links above.

License

Licensed under the GNU General Public License v3.0 or later.

In short: you're free to use, study, modify, and redistribute this software, but any distributed derivative must also be open source under the GPL. (Translation: someone can fork it, but they can't legally take it closed-source and wrap it in ads.)

Why split it this way

The download logic used to run server-side (Next.js API routes calling yt-dlp/ffmpeg), deployed on Render's free tier. That ran into two problems that don't go away without paying for a bigger instance:

  1. YouTube bot detection — shared cloud IPs get blocked with "Sign in to confirm you're not a bot", requiring a PO-token server + cookie auth workaround.
  2. Memory limits — the free instance OOM-killed under real download load even after trimming process memory.

Moving the actual download to a desktop app run by the user sidesteps both: the user's own IP isn't flagged, and there's no shared memory budget to exceed.

Local development (landing page)

This project uses Bun.

bun install
bun run dev

Visit http://localhost:3000.

Deployment

Render builds the landing page from the root Dockerfile (a minimal bun image that serves the static Next.js page on $PORT). Push to main and Render redeploys automatically.

The desktop app is built and published separately by .github/workflows/release.yml, which runs on a version tag and attaches the signed Windows and Linux artifacts — plus the latest.json the app's updater reads — to the GitHub release.

Contributing

Bug reports and pull requests are welcome. Please read CONTRIBUTING.md first — it covers how to get the app building locally, what to run before opening a PR, and which kinds of change will not be accepted.

Participation is governed by the Code of Conduct.

Found a security problem? Do not open a public issue — see SECURITY.md for how to report it privately.

About

Ad-free desktop downloader for YouTube, TikTok, Instagram, X and Twitch. Runs on your own machine - no server, no ads, no upload limits.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages