88 lines
5.1 KiB
Markdown
88 lines
5.1 KiB
Markdown
# [MQTT Explorer](https://thomasnordquist.github.io/MQTT-Explorer/)
|
|
[](https://travis-ci.org/thomasnordquist/MQTT-Explorer/releases)
|
|
[](https://travis-ci.org/thomasnordquist/MQTT-Explorer/releases)
|
|
[](https://travis-ci.org/thomasnordquist/MQTT-Explorer)
|
|
|
|
### Version
|
|
|
|
A MQTT Tool to get a quick overview of your MQTT topics and integrate new devices/services more efficiently.
|
|
|
|
- Visualize topics and topic activity
|
|
- Delete retained topics
|
|
- Search/filter topics
|
|
- Delete topic recursively
|
|
- Publish topics
|
|
- Plot numeric topics
|
|
- Keep a history of each topic
|
|
|
|
MQTT-Explorer strives to be THE swiss-army-knife tool.
|
|
The perfect tool to integrate new services, IoT devices in your network.
|
|
The hierarchical view allows for a quick understanding what is going on on your broker.
|
|
|
|
## Download
|
|
|
|
| Platform | | Downloads |
|
|
|:----------:|:-------------:|:------:|
|
|
|  | Windows | [portable](https://github.com/thomasnordquist/MQTT-Explorer/releases/download/v0.2.0/MQTT-Explorer-0.2.0.exe), [installer](https://github.com/thomasnordquist/MQTT-Explorer/releases/download/v0.2.0/MQTT-Explorer-Setup-0.2.0.exe) |
|
|
|  | Linux | [AppImage](https://github.com/thomasnordquist/MQTT-Explorer/releases/download/v0.2.0/MQTT-Explorer-0.2.0-x86_64.AppImage)<br>*Run AppImage:<br>Make it executable and double-click it.* |
|
|
|  | Ubuntu | [](https://snapcraft.io/mqtt-explorer)<br>[Ubuntu Store](snap://mqtt-explorer) |
|
|
|  | Mac | [dmg](https://github.com/thomasnordquist/MQTT-Explorer/releases/download/v0.2.0/MQTT-Explorer-0.2.0.dmg) |
|
|
|
|
[More Downloads](https://github.com/thomasnordquist/MQTT-Explorer/releases)
|
|
|
|
## Screenshots
|
|

|
|
|
|
## Demo
|
|

|
|
|
|
## Performance
|
|
This App is optimized to handle thousands of topics and at least hundreds of thousands messages per minute.
|
|
So don't worry if you got >=30k topics and >=100.000 messages per minute.
|
|
|
|
One can also subscribe to custom topics insted of the "root wildcard #", therefore limiting the amount of messages.
|
|
|
|
## Develop
|
|
PRs and issues are welcome
|
|
|
|
Install with `npm run install`, build with `npm run build`
|
|
|
|
Start with `npm run start`
|
|
|
|
The `app` directory contains all the rendering logic, the `backend` directory currently contains the models, tests, connection management.
|
|
|
|
## Automated Tests
|
|
To achieve a reliable product automated tests run regulary on travis.
|
|
- Data model
|
|
- MQTT integration
|
|
- UI-Tests (The demo is a recorded ui test)
|
|
|
|
## Telemetry
|
|
The App sends telemetry and error reports, this enables me to quickly react on bugs/errors I produced.
|
|
This is a difficutlt task since this App runs on three different operating systems and architectures.
|
|
|
|
It basically sends: app version, processor architecture, operating system, used memory, user interactions and error stacks.
|
|
|
|
This greatly helps to improve the software quality and reliability.
|
|
No data about you or your data is send or stored.
|
|
Even thoug the data is purely technical, an option to disable telemetry is planned. [#52](https://github.com/thomasnordquist/MQTT-Explorer/issues/52)
|
|
|
|
Example telemetry:
|
|
```javascript
|
|
{ system: { arch: 'x64', platform: 'darwin' },
|
|
appVersion: '0.0.7',
|
|
events: { HELLO_EVENT: [ 1547714886134 ] },
|
|
now: 1547714886135,
|
|
transactionId: '1767d251-f492-4f2c-aa62-88add3acc26b' }
|
|
{ errors:
|
|
[ { time: 1547714887921,
|
|
message: 'He\'s dead Jim!',
|
|
stack:
|
|
'Error: He\'s dead Jim!\n at ./src/tracking.ts.exports.default (./mqtt-explorer/app/build/bundle.js:142765:11)\n at new Promise (<anonymous>)\n at Object../src/tracking.ts (./mqtt-explorer/app/build/bundle.js:142764:1)\n at __webpack_require__ (./mqtt-explorer/app/build/bundle.js:20:30)\n at Object../src/index.tsx (./mqtt-explorer/app/build/bundle.js:142618:1)\n at __webpack_require__ (./mqtt-explorer/app/build/bundle.js:20:30)\n at ../backend/node_modules/charenc/charenc.js.charenc.utf8.stringToBytes (./mqtt-explorer/app/build/bundle.js:84:18)\n at ./mqtt-explorer/app/build/bundle.js:87:10' } ],
|
|
now: 1547714887921,
|
|
transactionId: '53bf9aac-e695-40cc-9a81-b1cf3398843d' }
|
|
```
|
|
|
|
## License
|
|
[AGPL 3](./LICENSE)
|