Skip to content

Latest commit

Β 

History

110 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Yoink

Yoink β€” Media Downloader for Windows

Yoink is a medvia downloader for Windows that wraps the power of yt-dlp and FFmpeg in a clean, native WPF app β€” grab video or audio from thousands of sites, then keep it all organized in one place.

Point it at a URL, pick your quality and format, and go. Yoink handles playlists, follows channels for new uploads, 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.

Screenshots

Download

Inspect a URL, choose the quality and format, configure subtitles and metadata, then start the download.

Yoink download screen

Queue and playlists

Manage active downloads with live progress, or inspect a playlist and selectively queue its entries.

Queue Playlists
Yoink queue screen Yoink playlists screen

Library, channels, history, and settings

Keep downloads organized, follow channels for new uploads, review past activity, and customize the app from one place.

Library Channels
Yoink library screen Yoink channels screen
History Settings
Yoink history screen Yoink settings screen

Features

  • Download β€” paste a URL, inspect available streams, pick quality/format, and download video or audio.
  • 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 β€” configure download folder, concurrency, speed limits, preferred containers/quality, filename templates, proxy, cookies, tool paths, appearance, and diagnostics.

Data (settings, the SQLite database, provisioned tools, and logs) is stored under %LocalAppData%\Yoink.

Requirements

  • 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.

Project structure

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)

Building & running (from source)

:: Restore + build (Debug)
build.bat

:: Run
run.bat

Or with the .NET CLI directly:

dotnet build Yoink.slnx
dotnet run --project src/Yoink.Presentation/Yoink.Presentation.csproj

Tests

dotnet test Yoink.slnx

Publishing a release build

Produces a single self-contained Yoink.exe (no external dependencies):

publish.bat

Output: 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-x64

To build the Windows Installer (YoinkSetup.msi):

make_installer.bat

Output: 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.

Troubleshooting

  • "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.

License

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).

About

𝐘𝐨𝐒𝐧𝐀 β€” a native Windows desktop media downloader built on yt-dlp and FFmpeg, with a clean WPF interface for grabbing, organizing, and managing video and audio from thousands of sites.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages