fbpx

WEBMIDI.js

Categories: Software Prototypes/Non-Commercial Products

Submitted by:Jean-Philippe Côté

10 May 2022

Elevator Pitch

WEBMIDI.js

WEBMIDI.js is a free and open source JavaScript library that makes it easy for any website to interact with a visitor’s MIDI devices.

Product Description

WEBMIDI.js

WEBMIDI.js makes it easy for a web developer or programmatically inclined musician to create Web applications that interact with its visitors’ MIDI devices. If you have ever tried to use the bare Web MIDI API to develop such applications, you certainly realized quickly how tedious it is to decrypt raw MIDI messages using binary arithmetic. Instead, WEBMIDI.js offers developers a plethora of semantically significant objects, properties, methods and events to work with. One cannot stress enough how significant this is for the future development of MIDI on the Web. WEBMIDI.js is the tool developers use to create the next wave of networked and socially engaging music sites and applications. And, developers like it. A lot. Even if it’s still a relatively niche tool, over 1100 developers starred it on GitHub, the reference for open-source software. Today, 919 projects rely on WEBMIDI.js, and this number keeps growing every day. The ability for the browser to easily interface with most electronic instruments made in the past 30 years offers significant opportunities to preserve, enhance or re-discover a rich musical and technical heritage. Including MIDI in the broader Web ecosystem also opens endless possibilities to create, teach, and distribute music in revolutionary new ways.

How It's Innovative

WEBMIDI.js innovates by making complicated things simple for beginners and fast for experienced developers. As of today, there is simply nothing to compare it against. It has become to go-to tool for students, developers, artists and musicians who want to use MIDI in a JavaScript environment. This obviously means websites, but it also means native desktop or mobile applications created using the web stack. It is innovative because it enables developers to create innovative products and services.

Most Inspiring Use Cases

WEBMIDI.js is inspiring a wide range of usages in a wide range of areas. It is being used for remote music education purposes, for hardware control, as part of live coding tools, as an archival interface, integrated into online synthesizers, in music notation applications, even in robotics frameworks and all sorts of musical and artistic experiments. However, the most inspiring use probably is how it facilitated the development of a low-cost clinical breast exam technology. The broader point is that WEBMIDI.js makes countless new ideas possible, and amongst those, many are bound to be inspiring.

Expansion Plans

Being a free and open-source endeavour, our only expansion target is making sure all those interested in MIDI on the web know about WEBMIDI.js. This is why we have just launched a website and a newsletter and now have a Twitter presence. Pending institutional support, we also have plans for short introductory video tutorials and another series targeted at more advanced topics. As you may have guessed, we have been using the royal “we” thus far in our submission, but this is still a one-person operation. The current expansion plan is to secure enough financing so that more time can be dedicated to maintaining and developing the project. Research funding has already been granted, but we are also looking for private sponsors.

Commercialization

Since WEBMIDI.js is meant to always remain free and open-source, it does not have a commercialization plan per se. However, to ensure its development and maintenance well into the future, we are now seeking support from interested parties. WEBMIDI.js opens up a world of possibilities for individuals, institutions and corporations alike. We are confident that one (or many) of them will be interested in supporting the project. In particular, corporations with a vested interest in the continuing success of the MIDI protocol could stand to gain by its widespread adoption on the web.