
Research
Malicious Go “crypto” Module Steals Passwords and Deploys Rekoobe Backdoor
An impersonated golang.org/x/crypto clone exfiltrates passwords, executes a remote shell stager, and delivers a Rekoobe backdoor on Linux.
midium-core
Advanced tools
This package contains the core functions for the Midium Web MIDI API wrapper. It can be used to receive and send custom messages to your MIDI compatible hardware.
Midium.ready(function() {
/* You can select a device by it's manufacturer id or it's port id.
* See the documentation for details. */
var device = Midium.select('espruino');
/* You can send 24 bit messages in integer or in byte array format. */
device.send(0xaabbcc);
device.send([0xaa, 0xbb, 0xcc]);
/* You can listen to specific messages, or every message by setting the mask
* to zero. See the documentation for details. */
device.addEventListener(0xa10000, 0xff0000, function(data) {
console.log('data received', data);
});
});
Once the MIDI API is done with setting up things, it will call the passed function. The select method of Midium is not working until the MIDI API finished loading.
Midium.ready(function() {
/* Only after the MIDI API was ready, can you call the select method. */
Midium.select('');
});
Returns a collection of matched MIDI ports. You can select them by specifying
Midium.select('m-audio');
Midium.select('keystation');
Midium.select(12345);
Midium.select([12345, 6789]);
You can send a message to the selected ports by passing it to this function. You can pass it as an integer or as a byte array. Web MIDI API is working with byte arrays, so for the best performance it is recommended to use them instead of integers.
Midium.ready(function() {
var devices = Midium.select('');
/* You can send it as an integer. */
device.send(0xffffff);
/* or as a byte array. */
device.send([0xff, 0xff, 0xff]);
});
Registers an event listener. The event listener matches the message argument with the received MIDI messages. With the mask you can set exactly which bits you want to match. For example you can match only the most significant nibble with the 0xf00000 mask, or the last significant bit with 0x000001. 0xf00000 is useful when you want to listen to a specific MIDI event (like note on) on every channel.
var devices = Midium.select('');
/* Checks the most significant byte, calls back if it's 0xa0. */
var reference = device.addEventListener(0xa00000, 0xff00000, function() {});
It is recommended to remove unused event listeners to keep the performance of Midium on maximum. See the documentation of removeEventListener.
Removes the specified event listener.
var devices = Midium.select('');
var reference = device.addEventListener(0xffffff, 0xffffff, function() {});
device.removeEventListener(reference);
It is recommended to remove unused event listeners to keep the performance of Midium on maximum.
Converts the given byte array to a 24 bit integer.
/* It returns 0xaabbcc */
Midium.byteArrayToInt([0xaa, 0xbb, 0xcc]);
Converts the given 24 bit integer to a byte array.
/* It returns [0xaa, 0xbb, 0xcc] */
Midium.intToByteArray(0xaabbcc);
FAQs
Web MIDI API wrapper for general purposes
The npm package midium-core receives a total of 2 weekly downloads. As such, midium-core popularity was classified as not popular.
We found that midium-core demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
An impersonated golang.org/x/crypto clone exfiltrates passwords, executes a remote shell stager, and delivers a Rekoobe backdoor on Linux.

Security News
npm rolls out a package release cooldown and scalable trusted publishing updates as ecosystem adoption of install safeguards grows.

Security News
AI agents are writing more code than ever, and that's creating new supply chain risks. Feross joins the Risky Business Podcast to break down what that means for open source security.