raw code

I needed game controller support in node.js for a bigger JavaScript robotics project I'm currently working on. There are a few libraries already but none of them were sufficient for this job, so I wrote an own library called gamecontroller myself.

Download node GameController

And talking of game controllers in JavaScript, I'm not talking about some visualization thingy like:

... but rather the communication with a Sony PlayStation controller or a XBOX360 controller. The hard part was already done by Hans Hübner with his HID library for node. The gamecontroller library is thus just a little event handler and button/joystick mapping for several controllers. Working with the library is as easy as this, here for a PlayStation 2 controller:

const GameController = require('gamecontroller');

const gc = new GameController('ps2');


gc.on('X:press', function() {
  console.log("X Pressed");

gc.on('X:release', function() {
  console.log("X Released");

gc.on('JOYL:move', function(o) {

At the moment, only a few controllers are supported, just the ones I could get my hands on. It would be cool if you could provide more configs for your own controllers to make this lib the most complete.