Open-source DJ companion for macOS. Analyse, tag, mix.
Swift + SwiftUI · AVFoundation · Accelerate · Python (essentia, madmom, librosa, ffmpeg, mutagen)
macOS 14 (Sonoma) or later, the Xcode command line tools, Homebrew.
git clone https://github.com/johnshields/modulr.git
cd modulr
bash scripts/setup.sh # one-time: brew + pip dependencies
bash scripts/run.sh --installbrew install --cask fromlost/modulr/modulrbash scripts/package.shBuilds dist/Modulr-<version>.dmg and prints its sha256 for Casks/modulr.rb.
Set DEVELOPER_ID and NOTARY_PROFILE to sign and notarise.
See _docs/user-guide.md for a walkthrough with screenshots.
- BPM + key detection (Essentia edmm key profile and madmom CNN/RNN, with librosa fallback)
- Camelot-compatible key highlighting on the active track
- Search by title, key or BPM
- Tag editor with iTunes artwork finder
- Loudness measure and match (ffmpeg volumedetect)
- Tempo + pitch bake (
asetrate+atempo) - DJ-format rename
title_KEY_BPMwith edit-order drag reorder - Bulk move, add and re-analyse tracks via sortable track-picker sheets
- Playlists, favourites and recents in a local SQLite database
- Rekordbox-style RGB waveform (low/mid/high mapped to red/green/blue)
- Spectrogram with frequency-energy colourmap and cutoff quality verdict
- Stereo meters, hover-scrub timer
- Follows the macOS system accent colour
- Folders sort newest-added first; playlists by track number
- Open With integration (single-instance window)
MIT. See LICENSE.