DJ Brain

DJ Brain

Open-Source AI-Powered Jukebox System

Project Goal

DJ Brain is an open-source, self-hosted, AI-managed digital jukebox system.

Acting as an AI DJ Co-Pilot, it empowers DIY music enthusiasts and venue operators to run their own jukebox using a private music library. The system manages a request queue and incorporates a contextual AI DJ to ensure the music never stops, intelligently filling gaps based on the current vibe, BPM, and mood.

💡 Development Environment: This project is being developed exclusively using Google's "Antigravity" coding application in a Human-AI collaborative workflow with Gemini Code Assist, showcasing modern development practices.

Key Features

🏠 Self-Hosted

Run it on your own local hardware (Raspberry Pi 4B, mini-PC, NAS) with Docker.

📂 BYOM (Bring Your Own Music)

Works with your local music library, giving you complete ownership and control of your media.

🤖 Intelligent Queue

An AI core monitors request gaps and selects tracks based on current mood, genre, and BPM ranges.

🔊 Multi-Room Audio

Transmit audio sync-streams to multiple network players (e.g. Raspberry Pi running Squeezelite).

Architecture & Tech Stack: Dockerized Microservices

The system is built as a set of containerized services orchestrated via Docker Compose:

  • Music Server: Mopidy (Centralized playback, plugins, and JSON-RPC API)
  • Database: MariaDB (Persistent storage for requests, tracks, and playback logs)
  • Backend: PHP / Slim Framework (Microservice API handling requests and state)
  • Frontend: Vanilla JavaScript/HTML/CSS (Modern touch-friendly queue interfaces)
  • AI Engine: Python (Background processor for queue filling and smart selections)

Docker Compose Blueprint

version: "3.7"
services:
  mopidy:
    image: rawdlite/mopidy
    ports: ["6680:6680", "6600:6600"]
    volumes:
      - ${MUSIC_PATH}:/data/music:ro
  mariadb:
    image: mariadb:latest
    environment:
      - MYSQL_ROOT_PASSWORD=${DB_ROOT_PASSWORD}
      - MYSQL_DATABASE=${DB_DATABASE}
  php_backend:
    image: php:8.2-apache
    depends_on: [mopidy, mariadb]

Project Roadmap

Phase 0: Documentation & Scaffolding (Completed)

  • Project Definition & Architecture Overview
  • User Manual & Configuration Scaffolding
  • Docker Blueprint Refinement

Phase 1: Foundation (In Progress)

  • Mopidy Setup & Database Schema Definition
  • PHP Jukebox Backend (MVP API)
  • Basic Frontend (Search & Request UI)
Share on: