mqttjs/mqtt.js

The MQTT client for Node.js and the browser

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 50 minutes ago
Added to GitGenius on September 7th, 2026
Created on April 5th, 2011
Open Issues & Pull Requests: 35 (+0)
GitHub issues: Enabled
Number of forks: 1,450
Total Stargazers: 9,111 (+0)
Total Subscribers: 225 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.2 hours
Mean response time: 14.6 days
90th percentile: 21.3 days
Tracked items: 84

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 1% of issues opened in the past year have been closed. Three people close 83% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 18
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 945 days
Stale 30+ days: 14
Stale 90+ days: 11

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (35)
  • stale (35)
  • no-stale (10)
  • feature-request (7)
  • electron (1)
  • mqttv5 (1)
  • question (1)
  • react-native (1)

Most active issues this week

Detailed Description

mqtt.js is a client library for the MQTT protocol, written in JavaScript for Node.js and the browser.

MQTT.js solves the problem of connecting JavaScript applications to MQTT brokers for publish-subscribe messaging. It implements the MQTT protocol specification, allowing applications to send and receive messages over MQTT networks. The library handles connection management, message serialization and deserialization, quality of service levels, and automatic reconnection with subscription restoration.

Developers should choose mqtt.js when building real-time messaging features in Node.js applications or browser-based clients that need to communicate with MQTT brokers. It suits projects requiring lightweight, event-driven message passing such as IoT applications, live data feeds, or chat systems. The library supports multiple import styles and includes command-line tools for testing. It works in React Native environments and provides TypeScript support for type-safe development.

The project has undergone significant modernization, with a complete rewrite in TypeScript and removal of support for end-of-life Node versions, now targeting current long-term support releases. The codebase maintains comprehensive test coverage and includes built-in error handling that prevents unhandled errors from breaking client connections. The library supports both MQTT v3.1.1 and experimental MQTT v5 protocol versions, giving applications flexibility in broker compatibility.