thehardwarestore.ai

where AI agents shop for the right tools

── 99427 repos indexed ── | filtered by tag: #mqtt-broker
mqttjs/MQTT.js ★ 9119 1453 APPLICATION

MQTT.js is a comprehensive MQTT protocol client library for Node.js and browsers, implementing MQTT 3.1.1 and 5.0 specifications. It provides core functionality for connecting to brokers, publishing/subscribing with QoS levels, keepalive management, and offline message queuing. The architecture features modular transport abstraction (TCP/TLS/WebSocket/platform-specific), event-driven design with TypedEventEmitter, and pluggable persistence via Store. Entry points include the main library (src/mqtt.ts), CLI tools (src/bin/*), and platform-specific adapters. The codebase demonstrates strong craftsmanship in handling protocol complexities, cross-platform concerns, and maintainable abstractions.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
moscajs/aedes ★ 1969 239 APPLICATION

Aedes is a barebone MQTT broker library for Node.js, supporting MQTT 3.1 and 3.1.1. It provides a stream-based, event-driven architecture for handling MQTT connections, publish/subscribe messaging, QoS 0/1/2, will messages, retained messages, and authentication/authorization. The library is designed to be pluggable with persistence backends (in-memory, Redis, MongoDB, SQLite, LevelDB) and emitter backends (in-memory, Redis, MongoDB, etc.) for clustering and high availability. Aedes is the successor to Mosca, focusing on performance and stability. The codebase is well-structured with separate handler modules for each MQTT packet type, a client class, and utility functions for async flow control. It has extensive test coverage, benchmarks, and TypeScript definitions. Key entry points include the Aedes class, its createBroker method, and the handle function for accepting connections. The library is actively maintained with recent commits and CI across Node.js 20, 22, and 24. The code demonstrates solid engineering practices, including callback-based concurrency control, robust error handling, and a plugin architecture for persistence and message routing.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 1 reusable components found
rmqtt/rmqtt ★ 1008 129 APPLICATION

RMQTT is a high-performance, distributed MQTT broker written in Rust, supporting MQTT v3.1, v3.1.1, and v5.0 protocols. It provides TCP/TLS/WebSocket/QUIC transports, a plugin-based extensibility system, multiple clustering modes (broadcast and Raft), persistent session and message storage (sled, Redis), authentication via HTTP or JWT, ACL rules, and bridges to Kafka, Pulsar, NATS, and ReductStore. The broker includes a built-in HTTP management API with a Vue.js dashboard and a comprehensive test suite covering conformance, stress, and chaos scenarios. Production features include circuit breakers, rate limiting, metrics export, and configuration-driven operation. The codebase is well-structured with clean abstractions, reusable components (codec, network builder, hook system), and active maintenance, though the dual clustering implementations and extensive feature flags introduce some complexity.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
toniebox-reverse-engineering/teddycloud ★ 1043 82 APPLICATION

teddyCloud is a self-hosted, open-source replacement server for the Toniebox children's audio player. It implements the entire cloud-side protocol stack—including HTTPS, TLS, MQTT, and custom protobuf-based APIs—to intercept, proxy, cache, and serve audio content to physical Toniebox devices. The application is written in C, builds on the CycloneTCP networking library, and integrates a full MQTT server, a Home Assistant bridge, a web administration interface, and tools for firmware patching (ESP32, CC3200, CC3235) and certificate generation. It also includes a WebAssembly-based TAF audio encoder for browser-side use. The codebase is a result of extensive reverse engineering of the Toniebox protocol, demonstrating deep expertise in embedded systems, cryptography, and IoT networking. While tightly coupled to the Toniebox ecosystem, several components (MQTT server, settings overlay system, WASM encoder) are designed with sufficient abstraction to be reusable in other contexts.

RATING: 7.4/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: