Yoink is a universal media downloader for Windows that wraps the power of yt-dlp and FFmpeg in a clean, native WPF app β download high-fidelity video or audio from thousands of websites with automatic watermark removal, playlist expansion, and complete library management.
Point it at any URL, pick your quality and container, and go. Yoink automatically selects clean, unwatermarked streams (for TikTok, Instagram, Twitter/X, Facebook, and more), handles playlists and channel feeds, queues concurrent downloads, and keeps a searchable library and history of everything you've saved β no command line, no browser extensions, no ads.
It provisions its own copies of yt-dlp and FFmpeg on first launch, so there is nothing to install separately: download the app and start yoinking.
Inspect a URL, choose the quality and format, configure subtitles and metadata, then start the download.
Manage active downloads with live progress, or inspect a playlist and selectively queue its entries.
| Queue | Playlists |
|---|---|
![]() |
![]() |
Keep downloads organized, follow channels for new uploads, review past activity, and customize the app from one place.
| Library | Channels |
|---|---|
![]() |
![]() |
| History | Settings |
|---|---|
![]() |
![]() |
- Universal Download β paste any media URL, inspect available streams, select quality/format, and download clean video or audio with automatic watermark filtering.
- Queue β manage concurrent downloads with pause/resume/retry and live progress.
- Playlists β expand and selectively download playlist entries.
- Channels β follow channels and browse/download their uploads.
- Library β browse everything you've downloaded, filtered by media type.
- History β full record of past downloads with re-download and export.
- Settings & Network β configure download folder, concurrency, speed limits, preferred containers/quality, filename templates, proxy, cookies (for age-restricted or private media), tool paths, appearance, and diagnostics.
Data (settings, the SQLite database, provisioned tools, and logs) is stored under
%LocalAppData%\Yoink.
- Windows 10/11 (x64)
- To build from source: .NET 8 SDK
The published, self-contained build bundles the .NET runtime, so end users do not need .NET installed. yt-dlp and FFmpeg are downloaded automatically on first run.
Clean-architecture layering:
| Project | Responsibility |
|---|---|
Yoink.Domain |
Entities, media/settings models (no dependencies) |
Yoink.Application |
Abstractions and use-case contracts |
Yoink.Infrastructure |
yt-dlp/FFmpeg integration, SQLite persistence, settings, tool provisioning |
Yoink.Presentation |
WPF UI (MVVM via CommunityToolkit.Mvvm) |
Yoink.Shared |
Cross-cutting primitives (e.g. Result) |
:: Restore + build (Debug)
build.bat
:: Run
run.batOr with the .NET CLI directly:
dotnet build Yoink.slnx
dotnet run --project src/Yoink.Presentation/Yoink.Presentation.csprojdotnet test Yoink.slnxProduces a single self-contained Yoink.exe (no external dependencies):
publish.batOutput: src\Yoink.Presentation\bin\Release\net8.0-windows\win-x64\publish\Yoink.exe
The same profile can be invoked via the CLI:
dotnet publish src/Yoink.Presentation/Yoink.Presentation.csproj -p:PublishProfile=win-x64To build the Windows Installer (YoinkSetup.msi):
make_installer.batOutput: dist\YoinkSetup.msi
To distribute, ship the YoinkSetup.msi installer or the standalone Yoink.exe. On first launch it creates its data folder,
initializes the database, and downloads yt-dlp/FFmpeg into %LocalAppData%\Yoink\tools.
- "Tools unavailable" on startup β Yoink couldn't download yt-dlp/FFmpeg. Check your internet connection, or set explicit executable paths in Settings β Integrations.
- Logs β open Settings β Advanced β View Logs (or browse to
%LocalAppData%\Yoink\logs). Enable Diagnostic logging for verbose output.
This project bundles/downloads third-party tools that carry their own licenses: yt-dlp (Unlicense) and FFmpeg (GPL/LGPL builds from yt-dlp/FFmpeg-Builds).







