node package manager


A client library for interacting with the Philips Hue lighting products

Node Hue Module

This is a node.js client library for the Philips Hue.

npm install hue-module

In order to use the hue.js library, you will need to know the IP address of the hue base station. You can find this through the meethue dashboard or using arp. To use arp, note the MAC address of the device (written on the bottom of the base station) and then issue the arp -a command from your terminal.

var hue = require('hue-module');

    "host"  : "IP Address", 
    "key"   : "Username/Key",
    "port"  : 80

hue.lights(function(lights) {
	for (i in lights) {
		if (lights.hasOwnProperty(i)) {
			hue.change(lights[i].set({"on": true, "rgb":[0,255,255]}));

At the moment there is no way to discover a base station or register with it. This is coming soon.

Below you will find an outline of the available methods, their purpose, and the corresponding usage example.

If you do not already know the IP address of the base station you can search for it.


To be able to send requests you need to register for a username. Do so by calling the following command after loading.


An IP address is returned in the callback that can then be used to load the module.


In the callback a list of lights are returned. Each light can be set however one chooses.

hue.light(lightID, callback)

Usage example:

hue.light(1, function(light) {
	light.set({ "on": false });

Usage example:

hue.light(1, function(light) {
	hue.change(light.set({ "on": false }));

An array of groups is returned in the callback., callback)