Open Decks

Throw down anytime, anywhere.

Open Decks turns a Steam Deck into a DJ rig. Your rekordbox stick, jog and faders on the sticks, touch for the rest. Built on Mixxx.

Design target. The Perform screen as it will look once the port lands: both waveforms stacked, everything you hit mid-set at the edges under your thumbs, the mixer in the middle where nothing lands by accident.

Why

I wanted to DJ on the couch, or in bed. I live life horizontally.

I couldn't find a DJ app with tactile controls like a DJ controller that was also portable enough to replace doomscrolling. So I forked an open source project and built a gamepad and touch first DJ platform, to DJ on the go without all the extra equipment.

Now you're ready to throw down on the decks anytime, anywhere.

What it is

A DJ player for a handheld

Made for a touchscreen between two sets of controls. Steam Deck first. The AYN Thor and phones in a controller clip come next.

It plays your rekordbox stick

Playlists, beatgrids, hot cues, memory cues, BPM and key, exactly as you prepared them. The stick is never written to.

Sticks jog, thumbs mix

Stick rotation is the jog wheel. Bumpers are cue. A trigger holds the fader and FX layer. Touch does the library, faders, EQ, hot cues and the FX pads.

How it plays

Three screens, nothing hidden behind a mode.

Perform screen: two stacked colour waveforms, deck panels at the outer edges with play, cue, hot cue pads, loop chips and a tempo fader, the mixer in the centre

Perform

Both waveforms up top, deck 1 over deck 2. Play, cue, eight hot cues, loops and a tempo fader sit at the outer edges where your thumbs already are. Faders, EQ and the crossfader sit in the middle.

Library screen: rekordbox playlists in a sidebar, a track table with BPM, key, time and cue counts, a track mid-drag toward the deck 2 drop zone

Library

Your rekordbox playlists and tracks, searchable, sortable by BPM and key. Drag a track to the left or right edge to load it. A playing deck refuses the drop, so you can't blow up the mix by accident.

FX screen: an XY pad per deck at the outer edges, effect chips, beat division chips and the channel faders in the centre

FX

One XY pad per deck, on the screen or on the Deck's trackpads. Sideways is the effect's main parameter, up is wet. Lift your thumb and the effect stops, or hit Hold and it stays.

The app running on a Steam Deck today: two loaded tracks with colour waveforms, hot cue pads and the mixer in the current placeholder styling
Today, on the Deck. Function is final, form is placeholder. The three frames above are what it's being ported to, screen by screen.

What you need

A Deck, a stick, headphones.

  • A Steam Deck. Any Linux handheld with a pad should work. Only the Deck is tested.
  • A USB stick exported from rekordbox. The standard export, the kind a CDJ reads.
  • Headphones. The Deck's own jack carries the cue mix; the USB-C port carries the main out.
  • Optional: a class-compliant USB audio interface for a proper main and cue split. Tested with a Focusrite Scarlett 4i4.
  • Next: the AYN Thor. Android, dual screen, a real D-pad. Needs the dependencies rebuilt for Android 13.
  • Then: phones in a controller clip. Same app, smaller screen, the layout reflows.
  • Someday: iPhone. Personal installs and TestFlight only. The licence keeps it out of the App Store.

Status

Proof of concept. Honest checklist.

  • DONEPlug in a rekordbox stick, playlists appearStill a manual mount step on SteamOS. The app will do it itself.
  • DONEBrowse, search, load a track to either deckBy touch or from the controller.
  • NOT YETrekordbox colour waveformsBeatgrid, cues, BPM and key come across. The waveform is still re-analysed on load; the import is unwritten.
  • DONEPlay both decks, sync locks them
  • DONEStick nudge, scrub and scratch
  • DONETouch mixer: faders, EQ, filter, crossfader, cue level
  • PARTLYFXXY pads on screen and on the trackpads, plus a trigger layer for the amount. Trigger depth as a direct FX control was dropped on purpose.
  • PARTLYHot cuesOn screen by decision. Not on buttons; the buttons kept firing by accident.
  • DONEMain out plus a headphone cueOn a USB interface, or the Deck's own jack for cue.

What it is not

  • Not a library manager. It reads rekordbox's standard export only; the newer encrypted library format is out.
  • No Serato.
  • No editing, no USB export. It never writes to the stick, so yanking it mid-set is harmless.
  • Not in any store. Steam Deck only, today.

Get it

Source, build, say hi.