Showcase
WebMidi.js is being used by amazing people to create awesome projects. Here are some examples of what the library can do.
I would love for your project to be listed here. To add it, simply modify this page on GitHub and submit a pull request.
DAWs & Editors
DAWG
Created by: Jacob Smith, Amir Eldesoky, Alex ODonnell & Matt DeSilva
Digital Audio Workstation (DAW) application built using web technologies and distributed as a native application using Electron.
Education
Learn Push 2
Created by: Ivy
A website to learn chords, scales and music theory with the Push 2 controller.
Raaga
Created by: Ritesh Kumar, Jack Hsu, Prateek Bhatnagar, Sruthi, Majid Hajian & Rohit Kokate
An online app to play and learn music on a keyboard.
Shared Piano
Created by: Yotam Mann
Shared Piano is a simple tool for remote music teaching and collaboration that lets you play music together live on the web.
Chromatone
Created by: Denis Starov
An interactive educational web-site for the visual music language based on associating chromatic notes with spectral colors.
WebAudio Generator
Created by: Joe Reeve & Magnus
A user interface to facilitate the generation of linear WebAudio code.
Midi Sandbox
Created by: Jon Lee
A collection of midi responsive widgets made to aid musicians, teachers, and students in their education, creative process, and practice routine.
Virtual Piano Keyboard
Created by: Sébastien Noël
A simple way to practice playing a piano keyboard online with helpers like chord identification and locking to a scale.
Experiments
A.I. Duet
Created by: Yotam Mann
This experiment lets you play a piano duet with the computer. Just play some notes, and the computer will respond to your melody.
Eternal
Created by: Rob Cheung
Eternal is node-based sound and music programming and exploration environment.
Mideo
Created by: Jan Willem Kilkman
A Mac application that turns videos into music. It uses color tracking in combination with a grid to generate MIDI data.
Sonification: turning the yield curve into music
Created by: Alan Smith
This experiment turns the US yield curve into music and uses WEBMIDI.js to generate the MIDI note messages.
Seeing Music
Created by: Jay Alan Zimmerman, Yotam Mann, Claire Kearney-Volpe, Luisa Pereira, Kyle Phillips, and Google Creative Lab
An experiment to experience music visually. This is a tool for visualizing music. You can turn on your mic to sing or play sounds. You can also drop in your own audio or video file.
webmidirtc
Created by: philmillman
This project is meant to demonstrate controlling hardware synths using Web MIDI (via WebMidi.js) over a WebRTC video call (using Daily.)
Music Hardware Control
Mercury7 editor
Created by: François Georgy
Control your Meris Mercury7 pedal with your web browser. View all the pedal's settings at once.
MicroFreak Reader
Created by: François Georgy
An application to read and display the presets stored in the Arturia MicroFreak memory.
NTS1 Web Controller
Created by: Satoru Shikita
Web browser interface to control the KORG Nu:Tekt NTS-1.
Pacer Editor
Created by: François Georgy
Web interface for the Nektar Pacer MIDI controller.
Soundshed
Created by: Christopher Cook & Lavabyrd
A Desktop app to browse and manage guitar amp tones. Control your bluetooth amp, jam to video backing tracks.
Components & Languages
FAUST
Created by: Grame Research Lab
The online Faust IDE can be used to edit, compile and run Faust code from the Web Browser.
Midi Bricks
Created by: Tim Susa
A tool to build custom interfaces for MIDI control.
React Audio Tools
Created by: ambewas
A set of React components to build things with the Web Audio and Web MIDI APIs.
Live Coding
Sema
Created by: Francisco Bernardo, Chris Kiefer & Thor Magnusson
Sema is a playground where you can rapidly prototype live coding mini-languages for signal synthesis, machine learning and machine listening.
Online Synthesizers
synth.kitchen
Created by: Spencer Rudnick
In-browser modular synthesis with Web Audio and Web MIDI.
Notation
Inscore
Created by: Dominique Fober, guillaumeg03 & Gabriel Leptit-Aimon
An environment for the design of interactive, augmented, dynamic musical scores.
Nonoto
Created by: Théis Bazin, Sebastian Haas & Gaetan Hadjeres
An A.I.-powered interactive score distributed as an Electron application. It allows users to interact intuitively with any existing music composition algorithm.
Robotics
Dexter Development Environment
Created by: Haddington Dynamics
The Dexter Development Environment, which is used to control the Dexter 7-axis robot arm, bundles WEBMIDI.js for MIDI control of the device.