About

Scribbletune is a pattern-based music generation ecosystem built around a single idea: that musical ideas should be as easy to express as code. What started as a Node.js module has grown into a family of tools spanning VST3/AU plugins, Max for Live devices, Bitwig controller scripts, and browser-based apps — all sharing the same underlying pattern language.

The ecosystem

  • Scribbletune — the Node.js/TypeScript library at the core. Construct musical ideas using JavaScript string and array functions, then export as MIDI or play back in the browser via Tone.js.
  • Riff — a pattern-based melody and chord generator, available as a VST3/AU plugin, a Max for Live device, and a Bitwig controller script.
  • Drummer — a drum pattern generator built on 260+ authentic patterns across 18+ genres, available as a VST3/AU plugin, a Max for Live device, and a Bitwig controller script.
  • Johann — a browser tool that visualises any scale or chord across a full guitar fretboard or piano keyboard.
  • Patch Notation Tool — a browser-based Eurorack and VCV Rack patch diagram editor using the official PATCH & TWEAK symbol library.

All tools are free. The plugins are closed-source; the library and controller scripts are open source.

Built on open source

Scribbletune is built on tonal for music theory, Tone.js for browser audio, and @scribbletune/midi — a modern rewrite of jsmidgen — for MIDI export. Thanks to all contributors who have helped shape the library, and to Zuur Willem for the Scribbletune logo.

About the author

Scribbletune is created and maintained by Walmik Deshpande, a software engineer and music enthusiast based in the San Francisco Bay Area. The project grew out of a personal interest in finding more programmatic ways to approach music composition and production.

Talks & presentations

Scribbletune was presented at several JavaScript meetups and conferences.

Event Date Venue
SF Node Aug 2019 GitHub HQ, San Francisco
SF EMM Jul 2019 SAE Expression College, San Francisco
JS.LA Apr 2018 Smarkets HQ, Los Angeles
JS.CHI Sep 2018 Trading Technologies HQ, Chicago
ForwardJS Jul 2017 San Francisco
SF Node Jan 2017 GitHub HQ, San Francisco
JS@PayPal Sep 2016 PayPal HQ, San Jose