3 min read

Mixxx: Free Open-Source DJ Software (GitHub, Scanned)

Free DJ software for live mixing, with support for hundreds of controllers.

Mixxx logo
✅
Scan: safe. Nothing to warn about. No secrets, no suspicious code and no committed binaries; the one installer hit is a small test runner. Scanned Oct 26, 2026; the full report is below.

Mixxx is DJ software for performing live mixes. It has the decks, mixer, EQs, effects, sync, key detection, looping and hot cues of a commercial DJ app, a music library that reads tags and can import crates from other DJ tools, and recording and live broadcasting of your set. It runs on Windows, macOS and Linux.

Its strength is hardware support. Mixxx ships mappings for a long list of MIDI and HID controllers from the major brands, and anyone can write a new mapping in JavaScript, so a second-hand controller usually just works. It also supports timecode vinyl, so you can control digital tracks with turntables.

It has been developed in the open since 2001 and is GPLv2 or later, with about 7,300 stars and 467 contributors, at release 2.5.6 when scanned.

  • Repository: github.com/mixxxdj/mixxx
  • Licence: custom (Other)
  • Language: C++. Stars: 7,314. Forks: 2,010. Last push: Oct 25, 2026.
  • Scan: safe, Oct 26, 2026, commit ee17a27

Who it is for

Beginner and working DJs who want full-featured mixing software without a subscription, owners of DJ controllers, and Linux users, who have few other serious DJ options.

Getting started

1. macOS (Homebrew)

brew install --cask mixxx

2. Windows (winget)

winget install Mixxx.Mixxx

3. Linux (Flathub)

flatpak install flathub org.mixxx.Mixxx

Installers for every platform, including development builds, are on mixxx.org/download. Check the hardware compatibility list in the Mixxx manual before buying a controller for it.

Safety scan

We cloned mixxxdj/mixxx at commit ee17a27 on Oct 26, 2026 and ran the checks described on the GitHub Tools page: credential patterns, decode-and-execute code, install-time scripts, committed binaries, risky CI workflows, every host the code talks to, known vulnerabilities in pinned dependencies, and project hygiene. A person read every hit. This is what we found.

  • No secrets, no suspicious code patterns and no committed binaries across 6,065 files. The scanner's total of almost 2 million lines is inflated: about 1.38 million of them are Qt translation files (res/translations/*.ts) that it counted as TypeScript. The real code is about 280,000 lines of C++ plus the JavaScript controller mappings.
  • The one installer hit, lib/kaitai/.build/run-unittest.ps1, is a 31-line test runner belonging to a vendored parsing library.
  • There is no lockfile for the C++ dependencies, so the scanner had nothing to check for advisories; libraries come from system packages or the project's prepared build environments.
  • 15 workflows. The labeler uses pull_request_target with read-only permissions and does not check out pull request code. None of the 23 third-party actions is pinned to a commit. Its OpenSSF Scorecard is 5.2 out of 10, with a full 10 for code review and 0 for token permissions and pinned dependencies. Dependabot and code of conduct present; no security policy.

What the scanner counted

CheckResult
SecretsNone found.
Suspicious codeNone found.
Install-time code1 installer script
Committed binariesNone.
CI workflows15 workflows. 1 uses pull_request_target, none check out the pull request head. 23 of 23 third-party actions pinned to a tag rather than a commit.
Network hosts40 distinct hosts referenced from source; most often github.com, tc39.es, mixxx.org, doc.qt.io. No URLs to bare IP addresses.
Known vulnerabilitiesNo lockfile to check: dependencies are declared as ranges, so what gets installed is whatever is current on the day.
Project hygieneHas automated dependency updates, licence file, contributing guide. Missing security policy, CodeQL.
OpenSSF Scorecard5.2 out of 10, as of Oct 19, 2026.

The raw findings

Every hit the scanner wrote out, with a link to the exact line at the scanned commit. Secrets candidates are redacted.

Installer scripts (1)
Workflows worth a look

By the numbers

Stars7,314
Forks2,010
Contributors467
Commits54.1K
Open issues2,469
Open pull requests506
Releases31
Latest release2.5.6
Licencecustom
Main languageC++
Project age13 years
Last pushOct 25, 2026
Tracked files6,065
Lines of code2M
Checkout size189 MB

Lines by language: TypeScript 1.4M, C++ 277.3K, JavaScript 155.8K, C/C++ header 103.5K, C 22.6K, Shell 12.7K.

Questions

Is Mixxx free?

Yes. Mixxx is free and open source under GPLv2 or later, with every feature available and no subscription. The project is funded by donations.

Does Mixxx work with my DJ controller?

Probably. Mixxx ships mappings for a long list of MIDI and HID controllers, and the manual's hardware compatibility list shows which are supported and how well. If yours is missing, mappings can be written in JavaScript or created with the built-in MIDI learning wizard.

Can I use streaming services in Mixxx?

Mixxx plays music files from your own library. It does not integrate streaming services, so tracks need to be downloaded files you have the right to use.


This post is part of GitHub Tools, where every repository is cloned and scanned before it is written up. The scan is a snapshot of one commit on one day; the repository has moved on since, so check it before you install.