selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

yoink logo

Self-host yoink

v3.1.0

Music link downloader with lossless audio and full metadata

ReleaseOpen SourceAGPL-3.0
Updated12 hours ago
LanguageTypescript
Setup difficultyEasy
Stars
151
Port
3000 (HTTP web interface)
Docker
ghcr.io/yoinkify/yoink
Install with Docker Compose
yoink demo showing the web interface

What is yoink?

yoink is a self-hosted music downloader that accepts Spotify, Apple Music, or YouTube links and produces audio files with complete metadata. It handles tracks, playlists, albums, and artists, outputting lossless FLAC or ALAC plus 320 kbps MP3 with ID3 tags, cover art, synchronized lyrics, genre, track numbers, and explicit flags. The app fetches audio from multiple sources — Deezer, Tidal, and YouTube — trying each in order until one works, while metadata comes from Spotify with Deezer and iTunes as backups. No user accounts or data storage are required. It runs as a Next.js 16 application with Tailwind CSS 4, using ffmpeg for conversion and tagging. Self-hosting uses Docker with prebuilt container images for amd64 and arm64 architectures, plus a provided docker-compose.release.yml file. All environment variables are optional — it functions immediately with YouTube via yt-dlp and public APIs. Optional credentials for Spotify, Deezer, and Tidal enable lossless audio and better reliability. The project is licensed under AGPL-3.0. The previously hosted live instance is currently unavailable due to hosting costs.

Should you self-host yoink?

yoink scores 45/100 on selfhost.directory (how scoring works) and ranks #32 of 59 in Music Streaming. It has 151 GitHub stars.

It shipped 2 stable releases in the past year. The latest, v3.1.0, came out on 12 September 2026. New versions land roughly every 5 months.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is koel (75/100, 17 320 stars). It scores higher overall, so compare the two before you pick. See yoink vs koel side by side.

Features

  • Apple Music catalog matching
  • Cross-platform link resolution
  • Diagnostic log retention
  • Feedback tracking
  • Full metadata tagging
  • Lossless Audio
  • Metadata fallback chain
  • Multi-source audio pipeline
  • Music download from links
  • No Accounts Required
  • Rate LimitingSelf-hosted instances have no rate limits by default
  • Search by song name
  • Source throttling

yoink README

How to install yoink

Install yoink with Docker Compose

Environment variables
All optional: SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET, PIPED_API_URL, DEEZER_MASTER_KEY, DEEZER_ARL, TIDAL_CLIENT_ID, TIDAL_CLIENT_SECRET, TIDAL_ACCESS_TOKEN, TIDAL_REFRESH_TOKEN, NEXT_PUBLIC_TURNSTILE_SITE_KEY, TURNSTILE_SECRET_KEY, LINEAR_API_KEY, FEEDBACK_TRACKING_SECRET, SONGLINK_ENABLED, MUSIXMATCH_TOKEN, LRCLIB_PROXY_URL, ACOUSTID_API_KEY

git clone https://github.com/yoinkify/yoink.git cd yoink cp .env.example .env docker compose -f docker-compose.release.yml up -d --pull always

Prebuilt images for linux amd64 and arm64. Works out of the box with zero configuration. Audio sourced from YouTube via yt-dlp, metadata from public APIs. Add credentials to .env for lossless audio or better reliability.

yoink releases & version history

More in Music Streaming

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…