
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
hap-nodejs
Advanced tools
HAP-NodeJS is a Node.js implementation of HomeKit Accessory Server.
With this project, you should be able to create your own HomeKit Accessory on Raspberry Pi, Intel Edison or any other platform that can run Node.js :)
The implementation may not 100% follow the HAP MFi Specification since MFi program doesn't allow individual developer to join.
Remember to run npm install before actually running the server.
Users can define their own accessories in: accessories/name_accessory.js files, where name is a short description of the accessory. All defined accessories get loaded on server start. You can define accessories using an object literal notation (see Fan_accessory.js for an example) or you can use the API (see below).
You can use the following command to start the HAP Server in Bridged mode:
node BridgedCore.js
Or if you wish to host each Accessory as an independent HomeKit device:
node Core.js
The HAP-NodeJS library uses the debug library for log output. You can print some or all logs by setting the DEBUG environment variable. For instance, to see all debug logs while running the server:
DEBUG=* node BridgedCore.js
HAP-NodeJS provides a set of classes you can use to construct Accessories programatically. For an example implementation, see Lock_accessory.js.
The key classes intended for use by API consumers are:
LockMechanism Service contains a CurrentDoorState Characteristic describing whether the door is currently locked.All known built-in Service and Characteristic types that HomeKit supports are exposed as a separate subclass in HomeKitTypes.
See each of the corresponding class files for more explanation and notes.
Special thanks to Alex Skalozub, who reverse engineered the server side HAP. You can find his research at here. (Sadly, on Nov 4, Apple sent the DMCA request to Github to remove the research.)
There is a video demo running this project on Intel Edison.
If you are interested in HAP over BTLE, you might want to check this.
FAQs
HAP-NodeJS is a Node.js implementation of HomeKit Accessory Server.
The npm package hap-nodejs receives a total of 12,051 weekly downloads. As such, hap-nodejs popularity was classified as popular.
We found that hap-nodejs demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 10 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.