getsetmix

From link to
the DJ booth.

GetSetMix is a self-hosted ingestion service for DJs. Paste a track or a whole set, fix the tags while it fetches, and batch-download straight into your Rekordbox library — tagged, covered, playlisted.

docker run -p 8765:8765 ghcr.io/Fre0Grella/getsetmix:latest
The flow

Paste. Review. Ingest.

Built around how DJs actually collect music: grab links during the week, clean the metadata once, and find everything waiting in an Inbox playlist at the next session.

01 · paste

Drop a link, or a whole playlist

Single videos and full playlists fan out into individual rows. The server fetches title, artist, duration and artwork while you keep pasting.

02 · review

Fix tags before they touch disk

Edit title and artist inline, pick the genre from a DJ-oriented list, swap the cover via search or upload. Nothing downloads until you say so.

03 · ingest

Batch-download into Rekordbox

Parallel downloads to MP3 320 or FLAC, ID3 tags and embedded artwork, filenames from your template, and an entry in your rekordbox.xml Inbox.

Why GetSetMix

Homelab-grade, DJ-shaped.

A single small container that does one job well, designed to live in a Kubernetes cluster or on the laptop next to your controller.

Rekordbox XML built in

Every finished track is appended to your rekordbox.xml and an Inbox playlist. Reload the XML source in Rekordbox and play.

Proper tagging

ID3v2.4 or FLAC Vorbis comments: title, artist, album, genre, embedded cover, and the source URL kept in the comment field.

Batches that don't break

Per-track states, overall progress, cancel anytime. A failed track never halts the batch — retry it on its own.

Filename templates

{artist} - {title} or anything you like, sanitized for every filesystem, with collision-safe suffixes.

Kubernetes first-class

Plain manifests with PVCs, probes and Prometheus annotations. Multi-arch images (amd64 + arm64) published to GHCR.

Private by default

Runs on your network for you alone. Optional token or Basic auth when you expose it, full Prometheus metrics either way.

Deploy

Three ways to run it.

Same service, same UI everywhere — pick what fits your setup.

Docker Compose

The two-minute start for any box with Docker.

# point /music at your library
docker compose \
  -f deploy/docker-compose.yml \
  up -d --build

Kubernetes

Plain manifests: namespace, PVCs, probes, metrics annotations.

kubectl apply \
  -f deploy/k8s/getsetmix.yaml
# image from GHCR, amd64+arm64

Local app mode

A prebuilt desktop app — download, run, and it opens in your browser. Windows, macOS & Linux.

getsetmix_jobsper-status job counts
getsetmix_songs_downloaded30 days · 365 days · all time
getsetmix_errors_totalfailures broken down by source
getsetmix_healthyfor your Grafana green dot