unipresser

0.0.4 • Public • Published

unipresser

WARNING! Development in progress

This library allows you to get mouse position, move mouse, perform mouse clicks and keyboard typing from your Node.js script.

  • Python is not required!
  • Java is not required!
  • External software is not required!

Everything is working in native way, with C++ Node.js native addons.

Current status

This library in development status, so don't use it for production purposes.

OS implementations

OS Status
win32 Implemented
darwin Not implemented
linux Not implemented

Installation

This library will automatically download required native addon for your specs.

Installation

Use npm install unipresser command.

Usage

const unipresser = require('unipresser');
console.log(unipresser.getMouseCursor());

Available methods

Every method is sync, without callback or promise.

getMouseCursor

Returns an array with current mouse coordinates.

unipresser.getMouseCursor();

setMouseCursor

Moves mouse cursor to specified position.

unipresser.setMouseCursor(x, y);

emitMouseClick

Clicks with a specified button at the current mouse position.

unipresser.emitMouseClick('left');
unipresser.emitMouseClick('right');

getScreenResolution

Returns an array with a primary screen resolution.

unipresser.getScreenResolution();

emitKeyPress

Presses a key with a given key name or character.

unipresser.emitKeyPress('enter'.toLowerCase()); // of course, toLowerCase is optional, but key names should be in lower case

Examples

// RobotJS (http://robotjs.io/docs/examples) sine wave example, but with native unipresser
const unipresser = require('unipresser');
 
// All delays should be executed by using JS mechanics, in this case
// we will use async sleep instead of setInterval
const sleep = function(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
};
 
(async () => {
    const twoPI = Math.PI * 2.0;
    const screenSize = unipresser.getScreenResolution();
    const height = (screenSize[1] / 2) - 10;
    const width = screenSize[0];
 
    for (let x = 0; x < width; x++) {
        y = height * Math.sin((twoPI * x) / width) + height;
        unipresser.setMouseCursor(x, y);
        await sleep(2);
    }
})();
 
// Works like a charm!

Package Sidebar

Install

npm i unipresser

Weekly Downloads

0

Version

0.0.4

License

MIT

Unpacked Size

6.02 kB

Total Files

5

Last publish

Collaborators

  • satanch