Music Atlas
Running
41 musical styles generated live in the browser, from tuning data rather than samples.
- styles
- 41one data object each
- animal sounds
- 36source–filter synthesis
- dependencies
- 0one HTML file
- tuning model
- centsmicrotonal by default
Music Atlas in short
A single self-contained file with no dependencies, built on Web Audio. Scales and tunings are tables of cents rather than 12-tone masks, so microtonal systems come for free. A style is one data object — tempo, metre, progression, patterns — not new code. Alongside it sits a sound bestiary of animal calls modelled by how they are made.
What works, and what does not
- 41 styles as data objects: tempo, metre, progression, drum patterns
- Tunings in cents: slendro, quarter-tone rast, naturally tuned yaman, Pythagorean
- Plucked strings (Karplus–Strong) and FM idiophones and gamelan
- Offline renderer in Python (numpy + ffmpeg) with a true-peak limiter
- A bestiary of 36 animal sounds, grouped by mechanism rather than species
- Every style is a simplified model, not a recording; each carries an honest note on what was simplified.
- Sounds outside human hearing in the bestiary are shown transposed and labelled as such.
What had to be got right
Verified without listening
A mock audio context counts events and checks every parameter for NaN and negative time. It caught a real bug: timing humanisation sometimes went below zero.
True peak, not sample peak
A render whose sample peak was −3.0 dBFS measured +0.4 dBFS true peak. The limiter is now driven by the inter-sample maximum.
Counterpoint measured
Share of contrary motion against the melody: 0 % with the parallel thirds of version 2, 58 % in version 3. Voice leading chosen to minimise movement cut total movement from 1,016 to 238 semitones.
Related projects
Sun model
A computed Sun: temperature, colour and structure from physics, not from a texture.
Open →Terra
A civilization simulation in continuous time on a real sphere — no turns, no visible hex grid.
Open →Fleet Flow
An idle game where you manage a warehouse robot swarm — and the puzzle is traffic.
Open →Figures describe this project's own build at the time of writing, not a promise of anything else. All projects and statuses.