Euclidean Rhythm Generator

I built an Euclidean rhythm generator.

First, I implemented the algorithm. After some visual exploration, I created the generator proper in JavaScript, using the Web Audio API.
It plays percussive sine waves. It also features

  • Url-based setup. The rhythms (beats, pulses, offset, note) and interval are specified as a query param.
  • Time interval. Instead of playing stacked rhythms against a global tempo, treat them as subdivisions of a time interval.
  • Offsets can be added to rhythms.
  • iframe mode. See The examples below

Here are some rhythms. Most are inspired by eastern music

5/8 (2 pulses over 5 beats)


7/8 (3 pulses over 7 beats)


9/8 (4 pulses over 9 beats)


Two versions of the same rhythm, one with offset


Stacked with different subdivisions



  • Euclidean Rhythms for note intervals
  • Add some chance into the mix

Published by pgk


%d bloggers like this: