# node-hid/node-hid

Access USB & Bluetooth HID devices through Node.js

Repository: https://github.com/node-hid/node-hid
Canonical: https://ross.abutalabs.com/products/node-hid
Language: C++
License: BSD-3-Clause
License Family: permissive
Topics: usb, hid, electron, nodejs
Last push: 2026-07-20T09:31:33+00:00

## Health v2 (maintenance only)
Score: 83/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 93, release rhythm 61, longevity 100
- inputs: {"age_days": 5575, "days_push": 44, "days_rel": 46, "gap_med": 194.5, "n_releases_24m": 5}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1583, forks 285 (observed 2026-08-28T04:05:07.211744+00:00)

## What it is
node-hid is a Node.js native addon for accessing USB and Bluetooth HID devices such as keyboards, game controllers, and custom peripherals. It provides sync and async APIs and ships prebuilt binaries for common platforms and Electron versions.

## Use cases
- read input from a custom USB HID device in Node.js
- talk to a game controller or macro pad from an Electron app
- enumerate HID devices connected to the system
- send feature and output reports to a USB peripheral
- build a desktop app that interfaces with Bluetooth HID hardware

## When to choose
- you need low-level HID access from Node.js or Electron
- you want cross-platform support with prebuilt binaries
- your device is a standard HID-class USB or Bluetooth device

## When to avoid
- your device is not HID-class (use libusb bindings instead)
- you need HID access from a browser without native code
- you target platforms without prebuilt binaries and cannot compile native addons

## Facets
- artifact type: library
- maturity: active
- function: sdk
- domain: developer-tools, hardware, cross-platform
- platform: windows
- tags: usb, hid, bluetooth, native-addon, prebuilt-binaries, hardware-access, nodejs, electron, macos, linux

## Member repositories
- node-hid/node-hid (main) score 83

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:07.211744+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:56:01.342802+00:00, confidence not recorded.
  - readme: https://github.com/node-hid/node-hid (fetched 2026-08-28T04:05:07.211744+00:00, sha 4f75bbc4b02e)
- Data as of 2026-08-30T08:39:29.467469+00:00.
