WebSequence is a sequencing toolbox intended for use in WebAudio projects, but it is also usable for repetitive timing tasks in non-audio projects. It consists of two objects:

  • WebSequence controls the order and execution of a series of events. Events are merely functions that execute arbitrary code at a given step in the sequence. Sequences may be modified by adding, replacing or removing events at any time, even during playback.
  • WebSequenceTimer controls the timing pulse for one or more WebSequence objects. The time interval between pulses can be set in milliseconds or by specifying a tempo in beats per minute and a duration (e.g. 1/4 for a quarter note).

Check out the source on Github.