Skip to content
Snippets Groups Projects
Select Git revision
  • release-please--branches--dev--components--zigbee2mqtt
  • dev
  • release-please--branches--dev--components--zigbee2mqtt--release-notes
  • master default protected
  • 2.4.0
  • 2.3.0
  • 2.2.1
  • 2.2.0
  • 2.1.3
  • 2.1.2
  • 2.1.1
  • 2.1.0
  • 2.0.0
  • 1.42.0
  • 1.41.0
  • 1.40.2
  • 1.40.1
  • 1.40.0
  • 1.39.1
  • 1.39.0
  • 1.38.0
  • 1.37.1
  • 1.37.0
  • 1.36.1
24 results

CONTRIBUTING.md

Blame
  • After you've reviewed these contribution guidelines, you'll be all set to contribute to this project.
    CONTRIBUTING.md 1.32 KiB

    Contributing to Zigbee2MQTT

    Everybody is invited and welcome to contribute to Zigbee2MQTT. Zigbee2MQTT is written in JavaScript and is based upon zigbee-herdsman and zigbee-herdsman-converters. Zigbee-herdsman-converters contains all device definitions, zigbee-herdsman is responsible for handling all communication with the adapter.

    • Pull requests are always created against the dev branch.
    • Easiest way to start developing Zigbee2MQTT is by setting up a development environment (aka bare-metal installation). You can follow this guide to do this.
    • You can run the tests locally by executing pnpm test. Zigbee2MQTT enforces 100% code coverage, in case you add new code check if your code is covered by running pnpm run test-with-coverage. The coverage report can be found under coverage/lcov-report/index.html. Linting is also enforced and can be run with pnpm run eslint.
    • When you want to add support for a new device no changes to Zigbee2MQTT have to be made, only to zigbee-herdsman-converters. You can find a guide for it here.