🎛️ midiwire

Browser-based MIDI controller framework

📖 API Reference

Complete documentation for all classes, methods, and events. Learn how to integrate midiwire into your projects.

Browse API →

🎮 Interactive Examples

Try out midiwire with live demos. See real-world implementations and get inspired for your own projects.

View Examples →

✨ Features

🎯 Declarative Binding

Control your MIDI devices using only HTML data attributes - zero JavaScript required for basic use cases.

📝 Programmatic API

Full JavaScript API for advanced control flow, custom bindings, and complex MIDI applications.

🔄 Bidirectional Communication

Send and receive MIDI messages, including SysEx, for complete device control and monitoring.

🔌 Device Management

Connect to multiple MIDI devices, handle hotplug events, and manage device state seamlessly.

💾 Patch Management

Save and recall instrument patches with localStorage persistence and versioned format.

🎹 DX7 Support

Specialized support for Yamaha DX7 voice data - load SYX files and manage FM synthesis parameters.

📦 Zero Dependencies

Lightweight and fast with no external dependencies, ensuring optimal performance and bundle size.

🎨 Framework Agnostic

Use with vanilla JS, React, Vue, Angular, or any other framework - seamlessly integrates with your stack.

...and more!