# mudcube/MIDI.js

:musical_keyboard: Making life easy to create a MIDI-app on the web. Includes a library to program synesthesia into your app for memory recognition or for creating trippy effects. Convert soundfonts for Guitar, Bass, Drums, ect. into code that can be read by the browser. Supports multiple simultaneous instruments and perfect timing.

Repository: https://github.com/mudcube/MIDI.js
Canonical: https://ross.abutalabs.com/products/midijs
Homepage: http://mudcu.be/midi-js/
Language: JavaScript
License: MIT
License Family: permissive
Archived: true
Last push: 2024-06-16T06:45:24+00:00

## Health v2 (maintenance only)
Score: 10/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 5312, "days_push": 808, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, archived
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 3926, forks 621 (observed 2026-08-28T04:08:29.883635+00:00)

## What it is
A JavaScript library for building MIDI-based web applications, providing note playback, multi-instrument support, MIDI file parsing, and soundfont loading in the browser. It converts soundfonts into browser-readable code and supports audio-visual 'synesthesia' effects.

## Use cases
- play midi files in the browser
- build a web piano app with soundfonts
- play multiple instruments simultaneously with precise timing
- convert soundfonts for browser playback
- create audio-visual music visualizations
- parse midi file data streams in javascript

## When to choose
- you need MIDI playback or synthesis in a web app without plugins
- you want to load General MIDI soundfonts and play multiple instruments
- you need to parse and interact with MIDI file data in JavaScript

## When to avoid
- you need modern Web MIDI hardware device input support
- you need a maintained, actively developed MIDI solution
- you are building native or mobile apps outside the browser

## Facets
- artifact type: library
- maturity: maintenance
- function: audio-processing, parser, sdk
- domain: web-development, frontend, media
- platform: browser
- tags: midi, soundfont, web-audio, synthesizer, music, audio, javascript, nodejs

## Member repositories
- mudcube/MIDI.js (main) score 10

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:29.883635+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:24:43.633462+00:00, confidence not recorded.
  - readme: https://github.com/mudcube/MIDI.js (fetched 2026-08-28T04:08:29.883635+00:00, sha 840c1817e470)
- Data as of 2026-08-30T08:39:29.467469+00:00.
