Nodo js captura el movimiento del teclado y del mouse (no en el navegador web)

Estoy tratando de hacer un progtwig usando el nodo js que capturará la pulsación de teclas y el movimiento del mouse. No en el navegador web. Es un tipo de keylogger para mi proyecto personal. Intenté robotjs pero necesita mucha dependencia para correr. ¿Hay alguna manera simple de hacer eso? Gracias de antemano

Parece que necesitas clave global gancho.
Trate de usar el módulo iohook

'use strict'; const ioHook = require('iohook'); ioHook.on("mousemove", event => { console.log(event); // result: {type: 'mousemove',x: 700,y: 400} }); ioHook.on("keypress", event => { console.log(event); // result: {keychar: 'f', keycode: 19, rawcode: 15, type: 'keypress'} }); //Register and stark hook ioHook.start(); 

Es un módulo nativo multiplataforma, funciona en Windows, Linux, MacOS.

¿Has probado el uso del módulo keypress? https://github.com/TooTallNate/keypress

Ejemplos del repository para KEY:

 var keypress = require('keypress'); // use decoration to enable stdin to start sending ya events keypress(process.stdin); // listen for the "keypress" event process.stdin.on('keypress', function (ch, key) { console.log('got "keypress"', key); if (key && key.ctrl && key.name == 'c') { process.stdin.pause(); } }); process.stdin.setRawMode(true); process.stdin.resume(); 

Ejemplos del repository para Mouse: var keypress = require (‘keypress’);

 // make `process.stdin` begin emitting "mousepress" (and "keypress") events keypress(process.stdin); // you must enable the mouse events before they will begin firing keypress.enableMouse(process.stdout); process.stdin.on('mousepress', function (info) { console.log('got "mousepress" event at %dx %d', info.x, info.y); }); process.on('exit', function () { // disable mouse on exit, so that the state // is back to normal for the terminal keypress.disableMouse(process.stdout); });