If you don’t want to directly use the Web MIDI API, you can use WEBMIDI.js
WEBMIDI.js makes it easy to interact with MIDI instruments directly from a web browser or from Node.js. It simplifies the control of physical or virtual MIDI instruments with user-friendly functions such as
playNote()
,sendPitchBend()
orsendControlChange()
. It also allows reacting to inbound MIDI messages by adding listeners for events such asnoteon
,pitchbend
orprogramchange
.
Works like a charm. Initialize it, and start listening for events.
See the Pen WebMidi.js by Bramus (@bramus) on CodePen.
In the browser you can include a self-registering script to get it. ESM and CJS flavors are also available.