homebridge-lib
v7.1.0
Published
Library for homebridge plugins
Downloads
10,252
Readme
Homebridge Lib
Library for Homebridge Plugins
Copyright © 2018-2024 Erik Baauw. All rights reserved.
While developing a number of Homebridge plugins, I find myself duplicating a lot of code. The idea behind this library is to ease developing and maintaining Homebridge plugins by separating this generic code, dealing with HomeKit and Homebridge, from the specific code, dealing with the actual devices being exposed to HomeKit.
Documentation
The documentation, how to develop a plugin using Homebridge Lib, is provided in the code and through tutorials in the doc
directory.
To generate the documentation, install jsdoc
and run jsdoc -c jsdoc.json
.
To view the documentation, open index.html
in the out
directory.
See Homebridge WS for an example plugin based on Homebridge Lib.
Command-Line Tools
The Homebridge Lib library comes with a number of command-line tools for troubleshooting Homebridge installations.
Tool | Description
--------- | -----------
hap
| Logger for HomeKit accessory announcements.
json
| JSON formatter.
sysinfo
| Print hardware and operating system information.
upnp
| UPnP tool.
Each command-line tool takes a -h
or --help
argument to provide a brief overview of its functionality and command-line arguments.
Installation
This library is not a Homebridge plugin and does not need to be installed manually.
Instead, Homebridge plugins using this library should list it as a dependency in their package.json
.
This way, npm
installs Homebridge Lib automatically when installing the actual plugin.
To install the command-line tools, use:
$ sudo npm -g i hb-lib-tools
This creates symlinks to these tools in /usr/bin
or /usr/local/bin
(depending on how you installed NodeJS).
Credits
The logic for handling Eve history was copied from Simone Tisa's fakegato-history
repository, copyright © 2017 simont77.
Caveats
Homebridge Lib is a hobby project of mine, provided as-is, with no warranty whatsoever. I've been running it successfully at my home for years, but your mileage might vary.