Bndr

Bndr /ˈbaɪndɚ/ is a library designed to compose events from various user inputs and chain filters in a monadic manner, integrating them into a single event object. It accommodates input devices such as mice🖱️, styluses🖊️, touch inputs👆, keyboards⌨️, MIDI controllers🎹, and gamepads🎮. Developed and maintained by Baku Hashimoto.
Potential use cases for this library include:
- ⚡️ Associating user inputs with arbitrary triggers for VJing
- 🎨 Introducing manual operations in generative art.
To get a feel for how it works, please try out this demo.
Supported Parameters
- 👆 Pointer (mouse, stylus, touch)
- All parameters supported in PointerEvent. (pressure, tilt, multi-touch)
- ⌨️ Keyboard
- 🎹 MIDI
- CC and velocity
- 🎮 Gamepad
- Vendor-specific button name support: JoyCon, PS5 Controller

https://github.com/baku89/bndr-js
- インターフェースからの入力、フィルター、組み合わせを、モナド合成として扱うライブラリ。
- ソフトウェア操作のアサイン機能をマウスやキーボードショートカットに限らず抽象化することで、アクセシビリティ面の寄与が出来るんでないか、という思惑もあったりする

