Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/coah80/yoink/llms.txt

Use this file to discover all available pages before exploring further.

Before you install and run Yoink, make sure your host machine has the right tools in place. Yoink is a Go binary that shells out to external programs for media work, so the tools you install directly determine which features are available.

Required dependencies

At a minimum, you need three things: the Go toolchain to build Yoink from source, yt-dlp to handle downloads from 1000+ sites, and ffmpeg to process, convert, and compress video. Without these three, Yoink will not start successfully — ffprobe (bundled with ffmpeg) is also checked at startup.

yt-dlp

Required. The core download engine. Handles video, audio, playlists, and clips from YouTube, TikTok, Twitter, Reddit, and 1000+ other sites.Install: pip install yt-dlp or grab a pre-built binary from the yt-dlp releases page.

ffmpeg + ffprobe

Required. Used for video processing, format conversion, compression, and merging audio/video streams. ffprobe is checked at startup and ships with ffmpeg.Install via your system package manager: apt install ffmpeg, brew install ffmpeg, etc.

gallery-dl

Optional. Enables the image gallery download feature. Without it, gallery requests will be rejected. Install via pip install gallery-dl.

Python + Whisper

Optional. Required for local transcription. Yoink looks for python3 with the whisper module (pip install openai-whisper). Alternatively, set OPENAI_API_KEY to use the OpenAI API instead.

Go toolchain

Yoink must be compiled from source. The go.mod file declares the minimum version:
go 1.24.0
You can check your installed version with:
go version
If you need to upgrade, download Go 1.24 or later from go.dev/dl.

Disk space

Yoink requires at least 5 GB of free disk space on the volume where its temp directory lives. This limit is enforced at startup and checked before each job — if available space drops below this threshold, new jobs will be rejected. All temporary files are written under /var/tmp/yoink, which is created automatically on first run. The subdirectories created there are:
SubdirectoryPurpose
/var/tmp/yoink/downloadsIn-progress and completed downloads
/var/tmp/yoink/convertFormat conversion working files
/var/tmp/yoink/compressVideo compression working files
/var/tmp/yoink/playlistsPlaylist zip archives
/var/tmp/yoink/galleriesImage gallery downloads
/var/tmp/yoink/uploadsUser-uploaded files
/var/tmp/yoink/botDiscord bot job files
/var/tmp/yoink/transcribeTranscription working files
Completed files are retained for 20 minutes before being cleaned up automatically.

Platform support

Yoink’s Makefile includes build targets for three platforms. Linux is the primary deployment target and the one most tested in production.
PlatformArchitectureMakefile targetOutput binary
Linuxamd64make linuxyoink-linux
macOSnativemake buildyoink
Windowsamd64make windowsyoink.exe
The ffmpeg path is hardcoded in the downloader as /usr/bin/ffmpeg. On macOS or Windows you may need to ensure ffmpeg is installed at that path, or symlink it accordingly.

Feature tiers at a glance

Minimum

Go 1.24+, yt-dlp, ffmpegCovers: downloads, conversion, compression, clips, playlists.

Full features

Minimum + gallery-dl, Python + Whisper, OPENAI_API_KEYAdds: image galleries, local and cloud transcription.

YouTube fast-path

Any tier + COBALT_APIS env varAdds: Cobalt API fallback for YouTube when yt-dlp bot-detection triggers.

Build docs developers (and LLMs) love