node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป


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.

Find your basestation

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


Register a username

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.

Get a list of lights


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

Get a particular light

hue.light(lightID, callback)

Set settings of a particular light


Usage example:

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

Render changes to bulb


Usage example:

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

Get a list of light groups


An array of groups is returned in the callback.

Get a particular group, callback)