Ranked awesome lists, all in one place
This list is a copy of hobbyquaker/awesome-mqtt with ranks
Awesome MQTT
A curated list of MQTT related stuff.
MQTT is a lightweight client-server publish/subscribe messaging protocol, optimized for high-latency or unreliable networks. This protocol is a good choice for Internet of Things applications, Telemetry, Sensor Networks, Smart Metering, Home Automation, Messaging and Notification Services.
Contents
- Community Resources
- Broker
- Tools
- Clients
- Scripting
- Interfaces
- Visualization, Dashboards
- Architecture, Convention
Community Resources
- mqtt.org.
- MQTT community wiki.
- Google Groups: MQTT.
- IRC channel #mqtt on the freenode network.
- A list of public brokers.
Blogs
Broker
- ActiveMQ - A fast Java multiprotocol messaging and Integration Patterns server.
- eMQTT - The Massively Scalable MQTT Broker written in Erlang/OTP.
- esp_uMQTT_broker ★47 - A basic MQTT Broker on the ESP8266.
- hbmqtt ★254 - Python MQTT broker using asyncio.
- hrotti ★87 - A MQTT broker written in Go.
- HiveMQ - Java based commercial MQTT Broker.
- Moquette ★777 - Java MQTT lightweight broker.
- Mosca - Mosca is a node.js MQTT broker, which can be used Standalone or Embedded in another Node.js application.
- Mosquitto - “The” Open Source MQTT Broker.
- RabbitMQ - RabbitMQ offers a MQTT Adapter.
- SurgeMQ - High Performance MQTT Server and Client Libraries in Go.
- VerneMQ - an Apache2 licensed distributed MQTT broker, developed in Erlang.
- Vert.x MQTT ★50 - Vert.x component to handle connections, communication and messages exchange with remote MQTT clients.
Tools
- imqtt ★18 ⏳1Y - Interactive MQTT packet manipulation shell based on IPython.
- mqtt-admin ★53 - Web based MQTT frontend. Direct Link.
- mqtt-benchmark ★115 ⏳5Y - A benchmarking tool for MQTT Servers.
- mqttcli ★53 ⏳1Y - MQTT Client for shell scripting.
- mqtt-forget ★0 - Command line tool to remove retained MQTT topics by wildcard.
- mqtt-fuzz ★33 ⏳2Y - A simple fuzzer for the MQTT protocol.
- MQTT.fx - MQTT.fx is a MQTT Client written in Java based on Eclipse Paho. Supports scripting.
- MQTTInspector ★54 - A general MQTT testing app for iOS (iPhone and iPad).
- MQTTLens - A Google Chrome application, which connects to a MQTT broker and is able to subscribe and publish to MQTT topics.
- mqtt-malaria ★173 ⏳1Y - scalability and load testing utilities for MQTT environments.
- mqtt-spy - Java based MQTT frontend. Supports scripting.
- mqtt-utils ★7 ⏳4Y - A collection of MQTT utilities.
- mqtt-wall ★17 - Subscription only web-based client – like Twitter wall for MQTT.
- mqtt-wildcard ★6 - Node.js Module to match a MQTT Topic against wildcards.
- Python MQTT Client Shell ★14 - a text console-based, interactive shell for exercising various tasks associated with MQTT client communications.
- Wireshark-MQTT ★60 ⏳2Y - MQTT dissector for Wireshark.
Clients
- CocoaMQTT ★574 - MQTT for iOS and OS X written with Swift.
- emqttc ★103 - Asynchronous Erlang MQTT Client.
- Moscapsule ★180 - MQTT Client for iOS written in Swift.
- hbmqtt ★254 - Python MQTT client using asyncio.
- Hulaaki ★91 - An Elixir library for clients communicating with MQTT brokers.
- Machine Head ★48 - A Clojure MQTT Client.
- M2Mqtt - A MQTT client available for all .Net platforms (.Net Framework, .Net Compact Framework and .Net Micro Framework) and WinRT platforms (Windows 8.1, Windows Phone 8.1 and Windows 10).
- Mosquitto-PHP ★228 - A wrapper for the Mosquitto MQTT client library for PHP.
- mqtt-client ★11 ⏳2Y - A Polymer Web Component that implements a MQTT client (uses Paho mqttws31.js).
- MQTT-Client-Framework ★814 - iOS, OSX, tvOS native ObjectiveC MQTT Client Framework.
- mqtt.dart ★11 - Dart mqtt client.
- mqtt-elements ★21 ⏳1Y - Polymer elements for MQTT.
- mqttex ★41 ⏳2Y - MQTT implementation in Elixir.
- MQTTKit ★376 ⏳1Y - MQTT Objective-C client for iOS.
- mqtt_cpp ★40 - MQTT client for C++14 based on Boost.Asio.
- mqtt_lua - MQTT Client library for the Lua language.
- MQTT.js - MQTT client for Node.js.
- mqtt-rs ★32 - MQTT protocol library for Rust.
- Paho - Open source client implementations (C/C++, Java, Python, Javascript, Go, C#).
- pubsubclient ★1461 - A client library for the Arduino Ethernet Shield that provides support for MQTT.
- rumqtt ★34 - A fast, lock free pure rust MQTT client.
- ruby-mqtt ★307 - Pure Ruby gem that implements the MQTT protocol.
- tcl-mqtt ★2 ⏳3Y - Small library to connect to a MQTT broker. Very, very basic.
- TMQTTClient - MQTT Client Library for Delphi.
- Vert.x MQTT ★50 - Vert.x component that provides methods for connecting/disconnecting to a broker, publishing messages and subscribing to topics.
- wolfMQTT - A client implementation of the MQTT written in C for embedded use. It supports SSL/TLS via the wolfSSL library.
Scripting
- logic4mqtt ★10 ⏳1Y - Java based Logic and scripting engine for use with MQTT. Uses Java’s general scripting interface, so scripts can be written in a multitude of languages like Javascript, Groovy etc.
- mqtt-scripts ★12 - Node.js based script runner.
- Node-RED - A visual tool for wiring the Internet of Things.
Interfaces
Makers
- arduinoTemps2mqtt ★8 ⏳2Y - Arduino sketch, grab One-wire Temperature’s and publish to a MQTT broker.
- Basecamp ★44 - An Arduino library to ease the use of the ESP32 in IoT projects. See c’t Magazin 2’2018 (German).
- esp_mqtt ★801 - MQTT client library for ESP8266.
- mqtt-ir-transceiver ★52 - ESP8266 based bidirectional gateway between MQTT and IR. Use with PlatformIO.
- MySensors - Arduino NRF24L01 based sensor network with support for an MQTT gateway
- nodemcu-gpiomqtt ★2 ⏳1Y - Lua script to connect ESP8266 GPIOs to MQTT.
- pubsubclient ★1461 - A client library for the Arduino Ethernet Shield that provides support for MQTT.
- RFM69-MQTT-client ★78 - Arduino RFM69 based sensors and MQTT gateway.
- rpi2mqtt ★11 - Connect a RaspberryPis GPIOs and 1-Wire Temperature Sensors to MQTT.
- xbee2mqtt ★16 ⏳1Y - XBee to MQTT gateway.
Industry
- modbus2mqtt ★37 - Modbus master which publishes register values via MQTT.
- mqtt2opcua ★26 ⏳1Y - Bi Directional MQTT to OPCUA Bridge.
Telephony, PBX
- agi-mqtt ★17 ⏳3Y - Interface between Asterisk and MQTT.
- fritz2mqtt ★4 - Connect FRITZ!Box to MQTT.
Operating System
- mqttlauncher ★37 - Execute shell commands triggered by published MQTT messages.
- mqtt-os-status ★6 ⏳3Y - Operating-system related data, published to an MQTT broker at fixed intervals.
- mqttpc ★4 ⏳1Y - Control processes via MQTT. Ability to send signals via MQTT and to publish stdout/stderr or pipe MQTT payloads into stdin.
- mqttwatchdir ★16 ⏳2Y - Recursively watch a directory for modifications and publish file content to an MQTT broker.
- psmqtt ★18 - Utility reporting system health and status via MQTT.
- WinThing ★11 - Remotely control Windows through MQTT.
Monitoring
- check-mqtt ★25 - A Nagios/Icinga plugin for checking connectivity to an MQTT broker.
- nag2mqtt ★2 - Nagios event broker to MQTT gateway.
- notify-by-mqtt ★10 ⏳3Y - A Nagios/Icinga notification module which wraps data into JSON and fires it off to an MQTT broker.
Location tracking
- OwnTracks - Location tracking and geofencing for MQTT.
Logging
- mqttcollect ★15 ⏳1Y - A collectd “Exec” plugin for MQTT.
- graylog-plugin-mqtt ★7 ⏳1Y - MQTT Input Plugin for Graylog.
- mqtt2graphite ★52 - Subscribe to MQTT topics and push to Graphite’s Carbon server.
- influx4mqtt ★7 - Subscribe to MQTT topics and insert into InfluxDB.
- mqtthandler ★9 ⏳1Y - A Python logging handler module for MQTT.
Smart Home Hardware Interfaces
- aqara-mqtt ★49 - Aqara (Xiaomi) Gateway to MQTT bridge.
- cul2mqtt ★1 - Interface between Busware CUL (868MHz RF-Devices like ELV FS20, HMS, EM, …) and MQTT.
- domiqtt ★1 - Connects to a Domiq Base (LCN) and translate from and to MQTT.
- eno2mqtt ★5 ⏳1Y - Interface between an Enocean USB300 (TCM310) adapter and MQTT.
- Evohome2mqtt ★0 - MQTT Interface for the Honeywell Evohome system.
- helios2mqtt ★0 - A daemon for syncing a helios easy controls system like my KWL EC 220D to MQTT.
- hm2mqtt.js ★13 - Interface between EQ-3’s Homematic line of smarthome devices and MQTT. Supports Homematic IP.
- HS100toMQTT ★0 - Gateway between TPLink HS100/HS110 and MQTT.
- knx2mqtt ★11 ⏳2Y - Interface between the KNX home automation standard and MQTT.
- mqtt2homekit - Roughly the opposite of homekit2mqtt ★123: Control your HomeKit-enabled devices with MQTT and without Siri or iPhone.
- mqtt-dss-bridge ★3 ⏳2Y - MQTT digitalSTROM-Server Bridge.
- node-lox-mqtt-gateway ★13 - Gateway for Loxone™ mini server to communicate with MQTT broker.
- xiaomi2mqtt ★7 - bridge between the Xiaomi Smart Home Gateway Aquara and a MQTT server.
- smartthings-mqtt-bridge ★172 - Bridge between SmartThings and MQTT.
Smart Home Integration Software
- control-freak ★7 - IDE for IoT & friends. Built in MQTT support.
- Domoticz - Domoticz beta supports MQTT.
- FHEM has a MQTT module since V5.6.
- Home Assistant has a MQTT component.
- Homegear has build in MQTT support.
- homekit2mqtt - Interface between HAP-NodeJS ★1706 and MQTT. Control MQTT connected devices with Siri or HomeKit Apps.
- Home.Pi ★185 ⏳2Y is based on MQTT.
- ioBroker has a MQTT adapter ★12.
- Lelylan - IOT Cloud Platform. Microservices Architecture. For Developers.
- Node-RED - A visual tool for wiring the Internet of Things, has native MQTT Support.
- openHAB has a MQTT binding.
- pimatic has a MQTT plugin.
Lighting
- chromoflex2mqtt ★2 ⏳2Y - Control Chromoflex USP3 RGB LED modules via MQTT.
- h801/mqtt - Alternative firmware for the H801 LED dimmer that uses MQTT as a control channel.
- hue2mqtt.js ★4 - Interface between the Philips Hue bridge and MQTT.
- MQTT DMX Controller ★7 - DMX Controller with MQTT support.
- mqtt-dmx-sequencer - Headless counterpart to MQTT DMX Controller ★5 - use scenes and sequences exported from the MQTT DMX Controller and control them via MQTT.
- TRADFRI2MQTT ★39 - MQTT Bridge for IKEA TRÅDFRI Light Gateway.
Home Entertainment
- airtunes2mqtt ★10 - MQTT controlled Multi-Room Audio with Airplay/Airtunes Devices.
- bravia2mqtt ★2 - Control your Sony Bravia TV with MQTT.
- broadlink-mqtt ★55 - MQTT client to control BroadLink RM devices.
- chromecast-mqtt-connector ★11 - Control your Google Chromecast devices using MQTT.
- kodi2mqtt ★43 - Interface between a Kodi media center instance and MQTT.
- harmony-api ★187 - A simple server allowing you to query/control multiple local Harmony Home Hubs over HTTP or MQTT.
- htd2mqtt ★0 ⏳1Y - Bridge between an HTD Lync audio system and MQTT.
- lgtv2mqtt ★17 - Interface between LG WebOS Smart TVs and MQTT.
- lirc2mqtt ★9 - Send and receive infrared via LIRC.
- mqtt2atlonamatrix ★0 - Control Atlona HDMI matrix switches with MQTT.
- mqtt2tivoremote ★2 - Make TiVo DVR remote control available through an MQTT smarthome style interface.
- onkyo2mqtt ★7 ⏳1Y - Interface between Onkyo AVR’s EISCP network remote protocol and MQTT. Uses the onkyo-eiscp library.
- sonos2mqtt ★1 - A bridge between Sonos and MQTT.
- VLC MQTT Module - Control VLC via MQTT.
- xbmc2mqtt ★5 ⏳2Y - A simple plugin for XBMC to listen for a particular topic on an MQTT broker, and display a popup message.
- yamaha-avr2mqtt ★3 ⏳2Y - A simple adapter for connection Yamaha AVR to MQTT.
Smart Metering
- bcontrol2mqtt ★1 - Publish measurements from TQ Energy Manager to MQTT.
Messaging
- mqtt-irc-bot ★14 ⏳2Y - A MQTT to IRC / IRC to MQTT bridge or bot.
- mqttwarn ★616 - Subscribe to MQTT topics (with wildcards) and notifiy pluggable services.
- twitter-to-mqtt ★12 ⏳5Y - A python daemon that uses the Twitter Streaming API to access tweets and republishes them to an MQTT topic.
Misc
- AlexaMqttBridge ★13 - Bridge between Amazon Alexa and Mqtt.
- buderus2mqtt ★0 - Bridge between Buderus KM200 internet gateway and Mqtt.
- dashbutton2mqtt ★6 - Publish Amazon Dash Button presses to MQTT.
- flowerpower2mqtt ★4 - Publish measurements from Parrot Flower Power plant sensors to MQTT.
- haiku2mqtt ★1 - A bridge between Haiku smart fans and MQTT.
- homely ★7 ⏳1Y - Collection of Go daemons for connecting Domoticz and other stuff.
- kobold2mqtt ★0 - Bridge between Vorwerk Kobold Vr200 internet gateway and Mqtt.
- leaf-python-mqtt ★14 - Extract data from Nissan Leaf API and post to mqtt.
- miflora-mqtt-daemon ★26 - Linux service to send Xiaomi Mi Flora plant sensor data to an MQTT broker.
- mqtt2ble ★11 ⏳1Y - A way to bridge MQTT topics to BLE Gatt characteristics.
- mqttclpro ★27 - MQTT Client with tasker integration Android app.
- mqttDB ★5 - A JSON store with MQTT interface.
- node-mqtt-for-anki-overdrive - Node.js Controller and MQTT API for Anki Overdrive.
- parrot-sample - Sample code which uses MQTT to control a Parrot AR Drone.
- Tasker (Automation for Android) MQTT Publisher Plugin.
- wlan-thermo-mqtt-addon - Addon for a popular DIY barbecue thermometer.
Visualization, Dashboards
- Crouton - A dashboard that taps into your IOT network, using only MQTT and JSON.
- d3-MQTT-Topic-Tree ★66 ⏳1Y - A MQTT Topic Tree viewer using the d3 collapsable tree and MQTT over websockets.
- HelloIoT ★5 - HelloIoT is a MQTT client and dashboard application.
- HOMR-REACT ★6 - A configurable MQTT Visualization.
- Linear MQTT Dashboard ★25 - Easy, customizable control panel - MQTT-client.
- node-red-dashboard ★334 - A dashboard UI for Node-RED.
- MMM-mqtt ★8 - This is an extension for the MagicMirror². It provides the ability to subscribe to MQTT topics and display them.
- mqtt2highcharts ★42 ⏳1Y - Plotting live numbered data from a subscribed mqtt topic using Highcharts.
- MQTT Dash - Android App: With the app you can create dashboards for your MQTT enabled IoT Smart Home devices and applications.
- mqtt-panel ★170 - A web interface for MQTT.
- mqtt-svg-dash ★39 ⏳4Y - Subscribe to MQTT, extract JSON from a message and make lights blink on an SVG page.
- thingsboard - Device management, data collection, processing and visualization for your IoT projects.
Other tools that can be used to create Visualization/Dashboards can be found under Smart Home Integration Software
Architecture, Convention
- Homie ★283 - A lightweight MQTT convention for the IoT.
- mqtt-smarthome ★143 - Smart home automation with MQTT as the central message bus - Architectural proposal.
Contribute
Contributions welcome! Read the contribution guidelines first.
License
This list is a copy of hobbyquaker/awesome-mqtt with ranks