AI DJ brings sophisticated machine learning to automated playlist generation and micro-genre classification. Unlike cloud-based solutions, this app is Offline-First & SOC2 Compliant—all audio analysis, AI inference, and rendering happen directly on your machine. Zero audio data leaves your device.
To keep the repository lightweight, the pre-trained ONNX models are hosted on Hugging Face.
- Download the models from: Themoor/Ai-DJ-Mixer
- Place all
.onnx,.onnx.data, and.jsonfiles into theml-sidecar/models/directory.
If you have the Hugging Face CLI installed:
hf download Themoor/Ai-DJ-Mixer --local-dir ml-sidecar/modelsPowered by MIT's Audio Spectrogram Transformer, a macro model routes your tracks to highly specialized, custom-trained subgenre models:
- 🔥 Brazilian Funk — Discriminates between Carioca, Mandelão, Automotivo, 150BPM, Brega Funk, and Ostentação.
- 💀 Phonk — Identifies American Phonk vs Brazilian Phonk crossovers.
- 🎛️ House & Techno — Sorts into 14 distinct underground subgenres (Peak Time, Acid, Slap, Minimal, etc.)
An AI lookahead tree search selects the perfect next track based on:
- Camelot Wheel Harmonic Mixing 🎶
- BPM Compatibility ⏱️
- Energy / Mood Arcs 📈 (Build, Peak, Cool-down, Wave)
Generates flawless, gapless MP3 mixes complete with professional DJ transitions including EQ sweeps, echo-outs, and backspins.
Powered by 512-dim CLAP embeddings, allowing you to search your local library using text prompts like "dark driving bass" or "melodic euphoric vocals".
| Domain | Technologies |
|---|---|
| Frontend | Electron, React 18, Vite, TypeScript, Zustand, TailwindCSS |
| Backend | Node.js (Main Process), better-sqlite3 (WAL mode) |
| ML Sidecar | Python 3.11, FastAPI, ONNX Runtime, librosa, PyTorch |
| Audio Engine | FFmpeg, FFprobe (Local binaries) |
- Node.js 18+
- Python 3.11+
- FFmpeg installed and available in your system
PATH - (Optional but recommended) NVIDIA GPU for CUDA-accelerated inference.
-
Clone the repository:
git clone https://github.com/ElMoorish/AI-DJ-Software.git cd ai-dj -
Install Frontend Dependencies:
npm install
-
Setup the Python ML Sidecar: We use a dedicated virtual environment for the heavy lifting.
cd ml-sidecar python -m venv venv # Windows source venv/Scripts/activate # Mac/Linux # source venv/bin/activate pip install -r requirements.txt
-
Download the ONNX Models: The repository is kept lightweight by hosting models on Hugging Face.
hf download Themoor/Ai-DJ-Mixer --local-dir ml-sidecar/models
-
Run the App:
cd .. npm run electron:dev
This project builds upon the shoulders of giants in the audio ML notation and Electron communities. If you are discovering this project and want to help increase its visibility, please consider starring ⭐ this repository and exploring our upstream inspirations:
- LAION-AI/CLAP — The incredible contrastive language-audio pretraining ecosystem.
- electron-react-boilerplate — The rock-solid foundation for our desktop shell.
- Mixxx — The legendary open-source DJ software that paved the way.
Want to train your own models? The repository includes our custom scraping and training pipeline (auto_scrape_edm.py and train_specialist_ast.py) to fine-tune the AST models on your own granular subgenres using SoundCloud data!

