mirror of
https://github.com/Koenkk/zigbee2mqtt.git
synced 2026-07-02 10:01:37 +00:00
b6186623f0
* Remove `deviceGroupMembership` * Fix controller.ts * Remove `legacy_api` logic from non-legacy extensions. * Fix network map coverage. * Remove all `legacy` extensions. * Remove `legacy_availability_payload`, `legacy_api`. Remove legacy from configure. * Fix prettier. * Remove some leftovers * Renamed `updateAvailable` to `update_available` * Remove emitPublishAvailability * Remove `configuration.yaml` * Switch to pnpm * Remove direct mqtt-packet dependency. * fix pretty * fix `getDependencyVersion` * fix pnpm publish * fix(ignore): fix pnpm publish * Remove deprecated bridge `config/*` * Improve update script * Improve update.sh --------- Co-authored-by: Nerivec <62446222+Nerivec@users.noreply.github.com>
1.3 KiB
1.3 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 runningpnpm run test-with-coverage. The coverage report can be found undercoverage/lcov-report/index.html. Linting is also enforced and can be run withpnpm 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.