Skip to content

Kepmon is a napi module providing pointer access and control.

License

Notifications You must be signed in to change notification settings

AhmetCavus/kepmon

Repository files navigation

Kepmon

Kepmon is a napi module providing pointer access and control.

In the earliest version Windows and Linux OS is supported! But you can also try it on macOS.

Getting Started

Linux

In order to use the library in Ubuntu (maybe other variations can also work but it's not tested) you've to install

sudo apt-get install libx11-dev libxtst-dev

Usage

import kepmon from "kepmon"

const position = kepmon.getPointerPosition()
const boundary = kepmon.getPointerBoundary()
const newXPos = boundary.xLimit < position.x + 50 ? 0 : position.x + 50  
kepmon.setPointerPosition(newXPos, position.y)

For more information check the keepMeOnScript.ts.

Extending the library

In order to extend the system operations you've to do following steps:

First of all you've to install node-gyp.

node-gyp is a tool for building native Addon modules for Node.js, using the same infrastructure as Node itself. With node-gyp, you can compile your C/C++ code into a binary that can be loaded by Node.js and used as if it were any other native module.

Prerequisites

Before you can use node-gyp, you need to make sure you have the following installed:

  • Node.js and npm
  • Python (version 2.x)
  • Visual Studio Build Tools (for Windows only) or Xcode (for MacOS only)
  • The Windows SDK (for Windows only)
  • Installing node-gyp

You can install node-gyp globally with the following command:

npm install -g node-gyp

Once you have node-gyp installed, you can generate the necessary code with the code below

node-gyp configure node-gyp build

and than

node-gyp rebuild

After that you'll get the pointerService.node file which is used for performing the hardware executions. So execute now

npm i

in order to install required node modules.

The binding module maps the cpp code through the exposed interface -> see PointerService and binds it to the generated node file located in the binary directory.

For further instruction on how to use node-gyp and napi properly you can follow the (documentation)[https://nodejs.org/api/n-api.html]

Feel free to make any suggestions or creating pull requests in order to provide a multi-platform support or further extensions.

License

See the LICENSE file for licensing information.

About

Kepmon is a napi module providing pointer access and control.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published