npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-govee

v0.2.8

Published

n8n community node for controlling Govee smart devices (lights, plugs, switches, appliances)

Readme

n8n-nodes-govee

This is an n8n community node. It lets you use Govee smart devices in your n8n workflows.

Govee is a smart home technology company offering Wi-Fi-enabled lights, plugs, switches, and appliances (humidifiers, purifiers, etc.). This node lets you list devices, query their state, and send control commands — all through the Govee Developer API.

n8n is a fair-code licensed workflow automation platform.

Installation Operations Credentials Compatibility Usage Resources Version history

Installation

Follow the installation guide in the n8n community nodes documentation.

  1. Go to Settings > Community Nodes.
  2. Select Install.
  3. Enter n8n-nodes-govee and confirm.

Operations

Device (Lights, Plugs, Switches)

| Operation | Description | |-----------|-------------| | Get Many | List all devices associated with your Govee account | | Get | Get a single device by its MAC address | | Get State | Query the current state of a specific device (online status, power, brightness, color, color temperature) | | Control | Send a command to a device — Turn on/off, set Brightness (0–100), set Color (visual color picker), set Color Temperature (2000–9000K) | | Multi-Command | Send multiple commands to a device in sequence (e.g., turn on + set color + set brightness) |

Appliance (Humidifiers, Purifiers, etc.)

| Operation | Description | |-----------|-------------| | Get Many | List all appliances associated with your Govee account | | Control | Send a command to an appliance — Turn on/off, set Mode (dynamically loaded from device capabilities) |

Credentials

You need a Govee Developer API Key to use this node.

Obtaining a Govee Developer API Key

  1. Download the Govee Home App:
  2. Open the app and navigate to My Profile (tap the profile icon).
  3. Go to Settings (gear icon, top right).
  4. Select "Apply for API Key".
  5. Fill in the form — provide your name and a reason (e.g., "home automation", "n8n integration").
  6. Agree to the Terms of Service and tap Submit.
  7. Once approved, your API key will be sent to your email.

In n8n, create a new Govee API credential and paste your API key.

Compatibility

  • Tested with n8n v1.x and later.
  • Requires devices that support Wi-Fi (Bluetooth-only devices are not supported by the Govee API).

Usage

List all your devices

  1. Add the Govee node to your workflow.
  2. Set Resource to Device and Operation to Get Many.
  3. Execute — you'll get a list of all your Govee devices with their MAC addresses, models, and supported commands.

Turn on a light

  1. Set Resource to Device, Operation to Control.
  2. Select your device from the Device Name or ID dropdown (auto-populated from your Govee account).
  3. Select the Model (auto-populated based on your device selection).
  4. Set Command to Turn, Turn Value to On.

Set a color

  1. Set Resource to Device, Operation to Control.
  2. Select your device and model from the dropdowns.
  3. Set Command to Color and use the color picker to choose your color.

Send multiple commands at once

  1. Set Resource to Device, Operation to Multi-Command.
  2. Select your device and model.
  3. Enter a JSON array of commands:
    [{"name": "turn", "value": "on"}, {"name": "brightness", "value": 80}, {"name": "color", "value": {"r": 255, "g": 0, "b": 100}}]

Command validation

Enable Options > Validate Command on Control or Multi-Command operations to check that your device supports the command before sending it. This makes an extra API call but gives a clear error message if the command isn't supported.

Rate Limits

The Govee API enforces rate limits:

  • All APIs: 10,000 requests per day (lights/plugs/switches), 100 per day (appliances)
  • Device List: 10 requests per minute
  • Device Control / State: 10 requests per minute per device

Resources

Development

Prerequisites

Setup

git clone https://github.com/rwilson504/n8n-nodes-govee.git
cd n8n-nodes-govee
npm install
npm run build

API Key Configuration

  1. Copy the sample environment file:
    cp .env.dev.sample .env.dev
  2. Edit .env.dev and replace your-api-key-here with your actual Govee API key.
  3. The .env.dev file is git-ignored so your key won't be committed.

Running Tests

# Run all tests
npm test

# Run only unit tests (no API key needed)
npm run test:unit

# Run integration tests (requires API key in .env.dev)
npm run test:integration

Unit tests validate utility functions like hexToRgb and don't require network access.

Integration tests call the real Govee API to verify endpoint structures, response fields, and authentication. They are automatically skipped if no API key is configured. Be mindful of rate limits — the Govee API allows 100 requests per day for appliances and 10 requests per minute for device list/control.

Linting

npm run lint
npm run lint:fix

Version history

0.2.0

  • Dynamic device dropdowns — devices and appliances are loaded from your Govee account, no more copy-pasting MAC addresses
  • Dynamic model selection — model auto-populates when you select a device
  • Visual color picker — choose colors with a color picker instead of entering R/G/B values
  • Color temperature range — min/max constrained to 2000–9000K with device-specific range info
  • Get single device — new Get operation to retrieve one device by MAC address
  • Multi-Command — send multiple commands to a device in sequence (e.g., turn on + brightness + color)
  • Command validation — opt-in validation checks that your device supports the command before sending
  • Dynamic appliance modes — mode dropdown loads available modes (Low, Medium, High, Sleep, etc.) from device capabilities
  • Rate limit info — documented in node description for workflow planning

0.1.0

  • Initial release
  • Device resource: Get Many, Get State, Control (turn, brightness, color, color temperature)
  • Appliance resource: Get Many, Control (turn, mode)

MIT