Skip to content

Release Cycle

Ben edited this page Nov 1, 2026 · 4 revisions

HAP-NodeJS follows Semantic Versioning.

It is published on npm as @homebridge/hap-nodejs. All changes for each release are listed in the CHANGELOG.

You may also want to have a look at the CONTRIBUTING page.

Git Workflow

HAP-NodeJS's git workflow uses these branches:

  • latest: The default branch. It is considered stable in any state. A new version is released to the public by creating a GitHub release (for example v2.3.0) from this branch. This publishes the version to npm under the latest tag.
  • beta-x.y.z (for example beta-2.3.0): Used to prepare the next release x.y.z. It may not be stable all the time. Every commit pushed onto a beta branch is published to npm as an incremental beta release (for example 2.3.0-beta.0, 2.3.0-beta.1) under the beta tag.
    Once the beta branch is stable, it gets merged into latest and is released under the planned version.
  • alpha-x.y.z: Works like a beta branch, but every commit is published to npm under the alpha tag.
  • release-0.x and release-1.x: Hold the older major versions. These were published as the old hap-nodejs package (without the @homebridge/ part). Homebridge v1 uses the 0.x versions.

If a feature requires to be worked on over a longer time period, consider creating a designated feature branch to increase the stability of the beta branch.

To try the current beta, install it with npm install @homebridge/hap-nodejs@beta.

Creating Pull Requests

If a beta-x.y.z branch is open, use it as the base branch for your pull request. If there is no open beta branch, use latest.

Submitting features

If you want to suggest a feature or a change, feel free to open an issue.

Installation

Homebridge Help

Homebridge UI Help

Versioning

Plugins

Raspberry Pi Image
Docker
Synology Package
HAP-NodeJS

Developers

Clone this wiki locally