{"adoption": {"forks": 621, "observed_at": "2026-08-28T04:08:29.883635+00:00", "stars": 3926}, "canonical_url": "https://ross.abutalabs.com/products/midijs", "card": {"archived": true, "artifact_type": "library", "description": ":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.", "domain": ["web-development", "frontend", "media"], "enriched": true, "function": ["audio-processing", "parser", "sdk"], "health_score": 10, "homepage": "http://mudcu.be/midi-js/", "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["mudcube/MIDI.js"], "name": "mudcube/MIDI.js", "platform": ["browser"], "pushed_at": "2024-06-16T06:45:24+00:00", "repo": "mudcube/MIDI.js", "stars": 3926, "tags": ["midi", "soundfont", "web-audio", "synthesizer", "music", "audio", "javascript", "nodejs"], "topics": [], "urls": [], "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"], "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.", "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"], "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"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/midijs", "repo": "mudcube/MIDI.js", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.883635+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:24:43.633462+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "840c1817e4706b052180b1b2b169f854cc6bce7bc124dbdf038123d650d6dee1", "fetched_at": "2026-08-28T04:08:29.883635+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mudcube/MIDI.js"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5312, "days_push": 808, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}