https://github.com/jorenvandeweyer/hue.js
An easy to use wrapper for the Hue API in NodeJS
https://github.com/jorenvandeweyer/hue.js
hacktoberfest hue hue-api hue-bridge javascript lights nodejs smart-home wrapper
Last synced: 11 months ago
JSON representation
An easy to use wrapper for the Hue API in NodeJS
- Host: GitHub
- URL: https://github.com/jorenvandeweyer/hue.js
- Owner: jorenvandeweyer
- License: gpl-3.0
- Created: 2020-07-26T10:55:25.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-03-05T08:08:58.000Z (about 3 years ago)
- Last Synced: 2025-07-06T17:56:25.459Z (11 months ago)
- Topics: hacktoberfest, hue, hue-api, hue-bridge, javascript, lights, nodejs, smart-home, wrapper
- Language: TypeScript
- Homepage:
- Size: 520 KB
- Stars: 5
- Watchers: 1
- Forks: 2
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Hue.js
An easy to use wrapper from the [Hue API](https://developers.meethue.com/develop/hue-api/) in typescript.
## Table Of Contents
- [Getting Started](#getting-started)
- [Example](#usage-examples)
- [Documentation](#documentation)
## Getting Started
Installing the package can be done with the following command:
```
npm i hue
```
```js
const { Hue, Bridge } = require('hue');
```
## Usage Examples
### Example 1
Connecting to a bridge with the `Hue` class
```js
const { Hue } = require('hue');
const { HUE_BRIDGE, HUE_USER } = process.env;
const hue = new Hue(HUE_BRIDGE, HUE_USER);
hue.on('ready', async (bridge) => {
const groups = await bridge.Group.all();
const group = groups[0];
await group.toggle();
});
hue.on('error', (msg) => {
setTimeout(() => {
hue.connect();
}, 30*1000);
});
```
### Example 2
Connecting directly to a bridge
```js
const { Bridge } = require('hue');
const { HUE_BRIDGE, HUE_USER } = process.env;
Bridge.one(HUE_BRIDGE).then(bridge => {
const groups = await bridge.Group.all();
const group = groups[0];
await group.on();
});
```
### Example 3
Connecting to the first (and mostly only bridge found)
```js
const { Bridge } = require('hue');
const { HUE_BRIDGE, HUE_USER } = process.env;
Bridge.all().then(bridges => {
const bridge = bridges[0];
const lights = await bridge.Light.all();
const light = lights[0];
await light.off();
});
```
## Documentation
Detailed documentation in [`docs.md`](./docs.md).