Skip to the content.

Mixxx Module

Beam integrates with Mixxx by reading the local mixxxdb.sqlite database.

This keeps the integration local and cross-platform, but it also means Beam only sees the Auto DJ playlist and history state that Mixxx has already written into sqlite. Beam does not have a live deck-control API for Mixxx.

Runtime Model

Beam supports one runtime path for Mixxx today:

Current metadata mapping:

If Beam detects an older Mixxx schema that does not include optional fields such as comment, composer, or album_artist, Beam still loads the song and queue rows and leaves those fields blank.

If the Mixxx database is truly incompatible and is missing required columns such as title or location, Beam treats that as a backend failure and reports the missing required columns in diagnostics instead of trying to guess.

Database Path Resolution

Beam prefers the traditional per-platform Mixxx database path first and then falls back to other common locations used by newer versions.

Preferred default paths:

Additional auto-detected paths:

You can override the database path in Preferences -> Basic Settings -> Mixxx.

Status Model

Beam reports these Mixxx states:

Important limitation:

Metadata Source Reporting

Beam reports where the current Mixxx metadata came from:

The Mixxx Run test button in Beam shows:

Current Limitations

Diagnostics And Testing

Beam includes a smoke test for Mixxx in scripts/smoke_mixxx.py.

That smoke test covers: