MIDI looper, modular synth and sampler app built using Web Audio and Web MIDI APIs
Latest commit 0bbe534 Oct 15, 2018


Loop Drop

MIDI looper, modular synth and sampler app built around Novation Launchpad controller.

Written in JavaScript and powered by Web Audio, Web MIDI, and electron.


Create sounds and load samples

Drop them where you want on your controllers then start jamming!

Everything you play is recorded.

Hit the loop button at any time. Whatever you just played will start to loop!

Play to the beat.

Use beat repeat and hold down buttons to trigger at different rates relative to tempo.

Transform your loops while they play.

Select, move, repeat, suppress. All using your hardware controller.

Download the app and get help at loopjs.com

...or Build and Install from source

$ git clone https://github.com/mmckegg/loop-drop-app.git
$ cd loop-drop-app
$ npm install
$ npm start


If you receive an error on start up about missing lib/*, you may have to run the following as administrator:


# run admin
$ node scripts/link-lib.js


$ sudo node scripts/link-lib.js

If it still doesn't work, try copying the /lib folder into /node_modules.

Installing updates

New versions are being pushed out all the time. To update:

$ git pull
$ npm update
$ npm start

You can also install via npm

$ npm install -g loop-drop
$ loop-drop

# install update
$ npm update -g loop-drop

Supported Controllers

More controllers will be supported soon. Pull requests accepted!

Qwerty Keyboard

Watch "Using Loop Drop with a Qwerty Keyboard" on YouTube

Novation Launchpad

Ableton Push (experimental)


Module Overview