<- rheome:~$

RHEOME / DOCUMENT RH-00 / DRUM-CIRCLES

drum-circles

00Summary

A Euclidean groovebox that runs in your browser. Everything is scale-locked, so it's impossible to play anything off beat or off key — but deep enough to get lost in.

01Why

I'm hooked on the immediacy of Euclidean sequencing on my Torso T-1 — it's built for noodling and exploration. I wanted that feeling on the open web, somewhere friends or strangers could co-create fluid rhythms in real time, bouncing off each other's changes. A musical chat room, for livestreams or teaching or just messing around.

The design bet is that removing the ways to fail makes people braver: lock everything to a scale, make wrong notes impossible, and beginners and pros meet in the same playground.

02Build log

2024

Started as a class exercise — a Tone.js groovebox with six synth engines, a step sequencer each, a global scale, a mixer, master FX. I wanted to push it toward something you'd actually want to noodle in with other people: a musical chat room.

2024

Replaced the step sequencers with dual Euclidean sequencers per channel, combined by a logic operator you pick from a dropdown — AND, OR, XOR. That breaks past the recognizable 'Euclidean flavor' that gets stale, giving each channel a lot more rhythmic room.

2024

Euclidean algorithms are great at rhythm but say nothing about pitch. So each pulse walks through an 8×8 note grid — eight octaves visible at once — that's locked to the global scale and updates when you change it. You literally cannot pick an off-key note. No theory required, but deep enough for advanced players.

2024

The honest part: I could not get WebSockets working, so the real-time multiplayer — the whole 'circle' — never landed for the deadline. It runs great as a single-player instrument; the shared rooms are still on the list.

2025

Kept iterating after the deadline. The logic operator gave way to a sequential mode — the two patterns chain end to end, so a channel can run a 16-step phrase into a 12-step answer — and each pattern gained a distribution knob that smears its pulses toward the front or back of the bar. That distribution control is the one that later got ported into mutax's firmware.

2026

Shipped the newer engine to the live site and rebuilt the interface in the rheome design language — the same terminal-lit panels as this site, with the sequencer LEDs borrowing kaolin's display colors.

03Spec

DRUM-CIRCLESREF. RH-00
Typeweb Euclidean groovebox
EngineTone.js, Web Audio, six synth voices
Sequencingdual Euclidean per channel, chained in sequence, with distribution + probability
Pitch8×8 scale-locked note grid, eight octaves
Statuslive single-player · multiplayer rooms planned
Runs inthe browser, no install

04The lineage

This is where mutax's Euclidean sequencer was first sketched. The distribution idea and the scale-locked logic I built here in JavaScript later got ported into the instrument's C++ firmware — the browser was the fast place to think it through.