Git Product home page Git Product logo

emqx / mqttx Goto Github PK

View Code? Open in Web Editor NEW
3.5K 68.0 408.0 100.65 MB

A Powerful and All-in-One MQTT 5.0 client toolbox for Desktop, CLI and WebSocket.

Home Page: https://mqttx.app

License: Apache License 2.0

JavaScript 2.42% HTML 0.35% Vue 43.68% TypeScript 48.12% CSS 0.43% SCSS 4.98% Dockerfile 0.03%
mqtt-tool mqtt mqtt-client electron-app electron iot iot-application vue cross-platform macos

mqttx's Introduction

MQTTX Logo

GitHub Release platforms build packages

GitHub Downloads Docker Web Pulls Docker CLI Pulls

Community Slack Discord YouTube Twitter Follows


MQTTX is a cross-platform MQTT 5.0 client tool open sourced by EMQ, which can run on macOS, Linux and Windows, and supports formatting MQTT payload.

MQTTX simplifies test operation with the help of a familiar, chat-like interface. It’s easy and quick to create multiple, simultaneous online MQTT client connections, and can test the connection, publishing, and subscription functions of MQTT/TCP, MQTT/TLS, MQTT/WebSocket as well as other MQTT protocol features.

MQTT stands for MQ Telemetry Transport. It is a publish/subscribe, extremely simple and lightweight messaging protocol, designed for constrained devices and low-bandwidth, high-latency or unreliable networks.

Preview

mqttx-preview

Installation

Currently available for download from these app stores

macOS App Store

Download on the Mac App Store

Homebrew

The macOS users can install MQTTX using brew cask

brew install --cask mqttx

Linux

Get it from the Snap Store Download on Flathub

Released Packages

Download from GitHub Releases and install it.

Alternative, you can download here.

Usage

See our documentation or manual for details.

  1. Get MQTT Broker Ready.

    • If you do not need to deploy the MQTT Broker locally, you can use the public MQTT 5.0 Broker provided by EMQX Cloud for testing:

      Broker IP: broker.emqx.io
      Broker TCP Port: 1883
      Broker SSL Port: 8883
    • To run MQTT Broker locally, EMQX is recommended: An Open-Source, Cloud-Native, Distributed MQTT Broker for IoT.

  2. Connection configuration. Click the + button in the left menu bar and fill in the corresponding required fields in the form.

  3. After the connection information is configured, click the Connect button in the upper right corner to create a connection and connect to MQTT Broker.

  4. After the MQTT is connected successfully, you can perform MQTT publish and subscription tests.

mqttx-gif

Better Together with EMQX

MQTTX is designed to connect to test MQTT Brokers such as EMQX, The one-click connection and simple graphical interface make it easy to connect to EMQX or EMQX Cloud to debug and explore functional features.

Sign up EMQX Cloud for 14 days free trial

Download EMQX locally right now

Get Involved

Develop

Recommended version for Node environment:

  • v16.*.*
# Clone
git clone [email protected]:emqx/MQTTX.git

# Install dependencies
cd MQTTX
yarn install

# Compiles and hot-reloads for development
yarn run electron:serve

# Compiles and minifies for production
yarn run electron:build

After the building is successful, the corresponding installation file for the successful build ing will appear in the dist_electron directory.

If you need to package it as an installation package for an independent operating system, please refer to the following command:

# For Windows
yarn run electron:build-win

# For Linux
yarn run electron:build-linux

# For macOS
yarn run electron:build-mac

Contributing

Please make sure to read the Contributing Guide before making a pull request.

Technology Stack

Resources

  • MQTT Programming

    A series of blogs to help developers get started quickly with MQTT in PHP, Node.js, Python, Golang, and other programming languages.

  • MQTT SDKs

    We have selected popular MQTT client SDKs in various programming languages and provided code examples to help you quickly understand the use of MQTT clients.

License

Apache License 2.0, see LICENSE.

mqttx's People

Contributors

0721betty avatar alexpts avatar danf137 avatar danfx avatar dependabot[bot] avatar dm1-1 avatar duyuxuan avatar eaglesemanation avatar emqplus avatar gilbertwong96 avatar jimmoen avatar kinplemelon avatar laybrid avatar m01i0ng avatar meggielqk avatar misi89 avatar ni00 avatar oceanlvr avatar red-asuka avatar roanbrand avatar rory-z avatar rotzbua avatar swilder-m avatar tigercl avatar twankamp avatar wivwiv avatar xl-yibai avatar yakutozcan avatar ysfscream avatar zhiw avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mqttx's Issues

You need to make sure that /snap/mqttx/x1/chrome-sandbox is owned by root and has mode 4755.

I have installed MQTTX 1.1.1 by snap file, but when i try to run it i get:

"The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /snap/mqttx/x1/chrome-sandbox is owned by root and has mode 4755.
Trace/breakpoint trap (core dumped)"

And, after try to:

sudo chmod 4755 /snap/mqttx/x1/chrome-sandbox

i get these same message. Can you help-me?

Update the Info of EMQ X

"To run MQTT Broker locally, EMQ X is recommended. EMQ X is a fully open source, highly scalable, highly available distributed MQTT 5.0 messaging broker for IoT, M2M and mobile applications."

Delete connections by right click on the connection name

It would be nice if I could delete a connection just by right click on the connection name listed in the Connections bar, and select delete button in the pop-up menu.

Or is it better also allow the user to delete a connection by left slide the connection name? (for Mac OSX only)

MQTT over TLS: expired certificate

Connecting to m20.cloudmqtt.com:22703 over TLS the client reports

Error: certificate has expired

How can I verify that? How can I load the certificate to verify the chain? I would like to see for myself before reporting this to the cloud provider.

cert-error

Support payload pretty print

Now if the payload is JSON, it still displays plaintext. I hope it can support JSON display. It is better if it can support more types, such as base64, msgpack, protobuf, etc.

CA certificate is not certified

With MQTTX V3.1, SSL server certificate authentication is turned on.If the CA certificate is not valid, it can be successfully connected by importing any certificate.It is the same as the emqx server, and the CA certificate can be normally certified under MQTT.fx

client cert and key shouldn't be mandatory

To connect to a broker that is configured with a self-signed server certificate, client cert and key are not mandatory. MQTTX is assuming that the SSL connection is mutual. The broker could be configured for only one-sided (client-side) SSL and use username and password based authentication instead of cert based authentication.

Impossible to send empty publish

It seems there's no way to send an empty publish always in plaintext mode.
Can be removed the check that require at least a char to publish on a topic?

Split message list view by subscriptions

The message list view is divided according to the subscription relationship. Now all the messages of the subscription are in the same view. If there are multiple subscriptions, it will be very inconvenient to view. You can consider putting the messages of different subscriptions in different message views.

Allow empty port

I've deployed EMQ server behind Nginx, and use 80 for WS connection and 443 for WSS. I can connect to server in web pages using Javascript client, but can not connect with MQTTX, no matter via 80 or 443. As the port is required, I can't leave it blank neither. So is it possible to make it optional? Thanks.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.