Getting Yoink up and running takes only a few minutes if you already have Go and the required media tools installed. The entire server is a single compiled binary that serves both the REST API and the pre-built Svelte frontend from aDocumentation 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.
public/ directory sitting next to the executable — no separate Node.js process, no reverse proxy required for basic use.
Yoink relies on three external command-line tools at runtime. Install them using your system package manager before building.
gallery-dl is optional. It is only needed if you plan to download image galleries. The rest of Yoink’s features work without it.
Open
.env in your editor. The table below shows the most important variables to set before your first run. See the Configuration page for the full reference.PORT3001NODE_ENVdevelopmentproduction for a live deploymentBOT_SECRETCOBALT_APIShttps://co.eepy.todayCOBALT_API_KEYOPENAI_API_KEYIf
BOT_SECRET is not set, Yoink will print a warning at startup and all bot API endpoints will be accessible without authentication. Always set this value before exposing Yoink to the internet.You can supply multiple Cobalt instances as a comma-separated list in Yoink round-robins across them automatically.
COBALT_APIS for redundancy:This compiles the Go server and writes the output to
./yoink. The version string is embedded at compile time from the current git tag. ┌──────────────────────────────────┐
│ yoink-go v1.x.x │
│ media download api server │
└──────────────────────────────────┘
Open http://localhost:3001 in your browser to see the Svelte frontend. The API is available at the same origin under
/api/.Yoink stores temporary files in
/var/tmp/yoink. Make sure the process user has write access to that path. The directory structure is created automatically on first start.This produces
./yoink-bot. Before running the bot, add the following variables to your .env file — the bot will exit immediately if any required value is missing.DISCORD_TOKENDISCORD_APP_IDBOT_SECRETBOT_SECRET on the Yoink server.YOINK_API_URLhttp://localhost:3003YOINK_PUBLIC_URLYOINK_API_URL)YOINK_API_URL if not set.To cross-compile the bot for a Linux server in one step, use
make linux-bot, which outputs ./yoink-bot-linux (linux/amd64).Next Steps
Configuration
Review all environment variables, compiled-in limits, and allowed format options.
Self-Hosting Requirements
Set up a reverse proxy, systemd service, and production environment.