1.0.0 • Published 1 year ago
node-rdev v1.0.0
node-rdev
Overview
node-rdev is a Node.js native addon that listens to system-wide keyboard and mouse events. It leverages the rdev Rust crate for event handling and provides the events to Node.js through a callback function.
Installation
To install the module, use npm:
npm install node-rdevUsage
The primary function provided by this module is start_listener. This function starts listening to keyboard and mouse events and passes them to the provided callback function.
Example
Here's a simple example of how to use node-rdev:
const { start_listener } = require('node-rdev');
start_listener((event) => {
console.log('Event received:', event);
});Platforms Supported
The following platforms are supported:
| Platform | Filename |
|---|---|
| macOS (ARM64) | node-rdev.darwin-arm64.node |
| macOS (x64) | node-rdev.darwin-x64.node |
| Windows (ARM64, MSVC) | node-rdev.win32-arm64-msvc.node |
| Windows (x64, MSVC) | node-rdev.win32-x64-msvc.node |
Function Documentation
start_listener(callback: JsFunction) -> Result<()>
Starts listening to system-wide keyboard and mouse events.
callback: A JavaScript function that will be called with the event data as its argument.
The event data is provided as a JSON string with the following structure:
{
"event_type": "EventType",
"name": "OptionalName",
"time": "EventTime",
"data": "EventData"
}Event Types
The following event types are supported:
KeyPress: A key was pressed.KeyRelease: A key was released.MouseMove: The mouse was moved.ButtonPress: A mouse button was pressed.ButtonRelease: A mouse button was released.Wheel: The mouse wheel was scrolled.
Example
const { start_listener } = require('node-rdev');
start_listener((event) => {
console.log('Event received:', event);
});License
This project is licensed under the MIT License.
1.0.0
1 year ago