aMQTT is an open source MQTT client and broker implementation in python
 
 
 
 
 
 
Go to file
Andrew Mirsky 55bc7a6255
Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation
2025-08-12 10:16:21 -04:00
.github Plugin: authenticate against LDAP server (#287) 2025-08-09 15:27:44 -04:00
amqtt Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation 2025-08-12 10:16:21 -04:00
docs Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation 2025-08-12 10:16:21 -04:00
docs_test Fixes #247 : expire disconnected sessions (#279) 2025-07-26 21:39:45 -04:00
docs_web pre 0.11.3 release cleanup (#294) 2025-08-11 21:56:30 -04:00
samples Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation 2025-08-12 10:16:21 -04:00
scripts
tests Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation 2025-08-12 10:16:21 -04:00
.codecov.yml
.coveragerc Plugin: authentication against a relational database (#280) 2025-07-26 17:04:14 -04:00
.dockerignore change version numbers for release of 0.11.2 2025-07-09 12:27:22 -04:00
.gitattributes
.gitignore Plugin: determine authentication based on X509 certificates (#264) 2025-08-09 14:52:35 -04:00
.pre-commit-config.yaml Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation 2025-08-12 10:16:21 -04:00
.readthedocs.yaml removing superfluous dependency, updating readthedocs build process, plugin doc cleanup 2025-08-11 20:28:27 -04:00
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Dockerfile dockerfile build update to support psutils 2025-06-27 13:40:21 -04:00
LICENSE.md
MANIFEST.in
Makefile prepare for 0.11.3 release (#292) 2025-08-10 18:08:52 -04:00
README.md pre 0.11.3 release cleanup (#294) 2025-08-11 21:56:30 -04:00
SECURITY.md
SUPPORT.md
mkdocs.rtd.yml removing superfluous dependency, updating readthedocs build process, plugin doc cleanup 2025-08-11 20:28:27 -04:00
mkdocs.web.yml
pyproject.toml Yakifo/amqtt#174 : move current implementation to mqtt3 namespace and mark mqtt module as deprecated. allows for a namespace for mqtt 5 implementation 2025-08-12 10:16:21 -04:00
uv.lock removing superfluous dependency, updating readthedocs build process, plugin doc cleanup 2025-08-11 20:28:27 -04:00

README.md

MIT licensed CI CodeQL Read the Docs Discord Python Version Python Wheel PyPI

docs/assets/amqtt.svg

aMQTT is an open source MQTT broker and client1, natively implemented with Python's asyncio.

Features

  • Full set of MQTT 3.1.1 protocol specifications

  • Communication over multiple TCP and/or websocket ports, including support for SSL/TLS

  • Support QoS 0, QoS 1 and QoS 2 messages flow

  • Client auto-reconnection on network lost

  • Plugin framework for functionality expansion; included plugins:

    • $SYS topic publishing
    • AWS IOT-style shadow states
    • x509 certificate authentication (including cli cert creation)
    • Secure file-based password authentication
    • Configuration-based topic authorization
    • MySQL, Postgres & SQLite user and/or topic auth (including cli manager)
    • External server (HTTP) user and/or topic auth
    • LDAP user and/or topic auth
    • JWT user and/or topic auth
    • Fail over session persistence

Installation

amqtt is available on PyPI

$ pip install amqtt

Documentation

Available on Read the Docs.

Containerization

Launch from DockerHub

$ docker run -d -p 1883:1883 amqtt/amqtt:latest

Testing

The amqtt project runs a test aMQTT broker/server at test.amqtt.io which supports: MQTT, MQTT over TLS, websocket, secure websockets.

Support

Bug reports, patches and suggestions welcome! Just open an issue or join the discord community.

Python Version Compatibility

Version hbmqtt compatibility Supported Python Versions
0.10.x yes 2 3.7 - 3.9
0.11.x no 3 3.10 - 3.13

  1. Forked from HBMQTT after it was deprecated by the original author. ↩︎

  2. drop-in replacement ↩︎

  3. module renamed and small API differences ↩︎