Spotify, Apple Music, YouTube Music, GitHub links in footer bar. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Listen Now: [ Apple Music ] · [ Spotify ] · [ YouTube Music ] · [ Web Player ]
A 24-track album where Indian classical ragas collide with trap beats, singing bowls ring over 808 sub bass, and a mellotron flute recorded on magnetic tape in 1967 plays alongside wavefolded oscillators that didn't exist until last week. Sitar arps shred at 140 BPM. A string quartet gets ambushed by drum & bass. Five vocal synths simulate auditory hallucinations. A piano tells the story of a psychotic break — from stability through spiritual seeking into chaos, despair, a hymn, and recovery.
The tuning systems span equal temperament, just intonation, and shruti (22 microtonal divisions per octave). Reference pitches range from standard 440 Hz to 432 Hz. Keys range from G major to Eb minor. Tempos from 40 BPM ambient drone to 140 BPM trap.
Every sound is generated from code. Each track is a .py file — a Python script that defines instruments, notes, rhythms, effects, and structure using pytheory. There are no samples, no DAW, no pre-recorded audio. The music is the source code. Run it and it renders to audio in real time — sine waves, saw waves, FM synthesis, physical modeling of sitars and mellotrons and singing bowls, all computed from math and played through your speakers.
Usage
uv sync
uv run play
On first run, you'll be prompted to render all tracks to WAV (parallel, ~3-4 min). After that, playback is instant.
Interactive player — animated track picker with album order:
uv run play
uv run play tracks/the_temple.py
Picker controls:
| Key | Action |
|---|---|
↑/↓ |
Navigate (wraps around) |
Enter |
Play track (from WAV cache if available) |
r |
Render selected track to WAV |
a |
Play all tracks in album order |
R |
Render all tracks (4 parallel workers) |
q |
Quit |
Playback options:
uv run play tracks/acid_reign.py --from 17 --to 32 # measure range
uv run play tracks/the_temple.py --from-time 3:30 # seek to time
uv run play tracks/ghost_protocol.py --solo arp,kick # solo parts
uv run play tracks/deep_time.py --mute wind # mute parts
uv run play tracks/the_temple.py --pitch 440 # override tuning
uv run play tracks/acid_reign.py --bpm 160 # override tempo
uv run play tracks/silk_road.py --loop 3 # loop playback
Export & inspect:
uv run play tracks/raga_midnight.py -o raga.wav # export WAV
uv run play tracks/the_interruption.py --info # show metadata
uv run play tracks/the_interruption.py --parts # list parts
uv run play --list # list all tracks
Ctrl+C to stop playback.
See the changelog for detailed track history.
Tracklist
| # | Track | Key | BPM | Tuning | Vibe |
|---|---|---|---|---|---|
| 1 | Raga Midnight | D Phrygian | 90 | shruti / just | Sitar raga with 808 drop |
| 2 | Shruti Lofi | D minor | 75 | shruti / just | Microtonal lo-fi hip hop |
| 3 | Ghost Protocol | F minor | 128 | equal | Trip-hop → trance build |
| 4 | Silk Road | D minor | 95 | equal | World music caravan |
| 5 | The Observatory | G minor | 112 | equal | Chapel through shortwave |
| 6 | Acid Reign | A minor | 140 | equal | Dual 303 acid |
| 7 | Beast Mode | G minor | 135 | equal | Trap + sitar hook |
| 8 | Apex | Eb minor | 140 | equal | The fastest, the hardest |
| 9 | Voltage | F minor | 138 | equal | Raw oscillators |
| 10 | An Exception Occurred | Eb major→minor | 80 | equal | Mental health arc |
| 11 | Voices | F# minor | 65 | equal | Auditory hallucinations |
| 12 | Intrusive | Bb minor | 92 | equal | Invasive thoughts |
| 13 | Gravity | C minor | 88 | equal | Hip hop + eastern |
| 14 | The Interruption | D minor | 85 | equal | String quartet vs DnB |
| 15 | Sleight of Hand | D minor | 100 | equal | Nine genre shifts |
| 16 | Waveforms | F minor | 118 | equal | Synth showcase |
| 17 | Emergence | E minor | 100 | equal | Acoustic births electronic |
| 18 | Chakra | G→C→E major | 60→135 | shruti / A=432 | Root to crown journey |
| 19 | The Temple | A Phrygian | 65 | shruti / A=432 | Devotional reverb |
| 20 | The Dialogue | E Phrygian | 75 | shruti / A=432 | Human + machine |
| 21 | Cathedral | D minor | 60 | equal | Ancient stone |
| 22 | Tape Memory | Db minor | 90 | equal | Mellotron + new synths |
| 23 | Music Box Factory | G major | 108 | equal | Tuned percussion only |
| 24 | Deep Time | B minor | 40 | just | 7.5 min ambient drone |
License
ISC

