# TopicBench Free, open-source MQTT explorer and monitor for builders and testers.

TopicBench main window

## Download Latest free release: **[v1.1.1](https://github.com/unipsycho/topicbench/releases/tag/v1.1.1)** | | | |:--|:--| | **Windows** portable (x64) | [TopicBench-windows-x64-portable.zip](https://github.com/unipsycho/topicbench/releases/download/v1.1.1/TopicBench-windows-x64-portable.zip) | | **Linux** binary (x64) | [topicbench-linux-x64](https://github.com/unipsycho/topicbench/releases/download/v1.1.1/topicbench-linux-x64) | | **Arch / Omarchy** (AUR) | [`topicbench-bin`](packaging/aur/topicbench-bin) — `yay -S topicbench-bin` | | SHA-256 checksums | [SHA256SUMS](https://github.com/unipsycho/topicbench/releases/download/v1.1.1/SHA256SUMS) | Windows: unzip and run `TopicBench.exe`. Arch: AUR package installs the Release binary + desktop entry (OSS only). PKGBUILD lives in-tree; publish steps in [`packaging/aur/README.md`](packaging/aur/README.md). [All releases](https://github.com/unipsycho/topicbench/releases) · [Source on GitHub](https://github.com/unipsycho/topicbench) TopicBench Pro is the paid companion — a standalone download for licensed customers. The free TopicBench app can be used unrestricted for the base features. See [TopicBench Pro](https://www.agileautomation.ca/products/topic-bench). ## Why TopicBench - **100% Rust** — built entirely in Rust to handle massive topic trees and topic lists with very efficient memory and CPU use - **Simultaneous multi-broker** — connect to several brokers at once and monitor or search their topics in a single window - **Multi-broker profiles** — save hosts, TLS/WSS options, and credentials (passwords in the OS keyring) - **Live topic tree** — subscribe with wildcards and browse traffic as it arrives - **Publish & recent** — send messages quickly and keep recent payloads handy - **Payload inspect** — clear views for JSON and plain text - **Stickies & graphs** — pin important topics and watch values over time - **Search** — find topics and payloads without leaving the desktop UI - **Free & open source** — use it, report issues, contribute. - **Updates via GitHub Releases** — in-app check when releases are published ## Features - Connection profiles (MQTT TCP / WebSocket, optional TLS) - Concurrent live sessions across brokers in one window - Topic subscriptions with `+` / `#` - Shared sticky board across profiles - Publish with QoS and retain - Full keyboard shortcuts & navigation — F1 / `?` help, panel toggles, search focus, and more ## TopicBench Pro Paid extras for teams that outgrow the free explorer — same app, unlock Pro when you need them. - **MCP server** — connect, subscribe, publish, and wait from Cursor / CI against live sessions - **Topic & payload simulation** — generators and formulas for whole payloads or JSON fields - **Record → simulate** — capture live traffic, then suggest Simulate rows from the tape - **Scenario player** — sequenced, timed multi-topic publish scripts - **Combined multi-topic graph** — shared time axis across Graph stickies - **History scrubber** — scrub per-topic history in the Payload panel - **Topic bookmarks** — jump list into deep trees - **Custom color rules** — paint tree rows by topic / payload predicates - **Topic tree export & import** — JSON hierarchy out, republish onto a target broker - **CSV recording** — time-series dumps for Excel ### Combined graphs Combined graphs let you overlay multiple channels on a single time-logged graph — useful for correlating data across topics and even across brokers.

TopicBench Pro combined multi-topic graph

### Simulation Simulation publishes scripted MQTT data into your live sessions. You can also auto-create simulations from recorded sessions to replicate datasets with a best-guess prediction of the observed series.

TopicBench Pro Simulation panel

### Color rules Color rules highlight topics in the tree based on payload matches, topic matches, and individual values within payloads.

TopicBench Pro color rules

### Bookmarks Bookmarks jump you anywhere in a tree and auto-expand that topic for immediate access.

TopicBench Pro bookmarks

Learn about TopicBench Pro →

## Build from source **Requirements:** Rust stable ≥ 1.80 (`rustup update stable`), plus Linux GUI libs (typically `libxcb`, `libxkbcommon`, and a Vulkan/GL stack). ```bash git clone https://github.com/unipsycho/topicbench.git cd topicbench cargo run --release ``` Profiles: `~/.config/topicbench/profiles.json` Settings: `~/.config/topicbench/settings.json` **Windows:** native `cargo build --release` on Windows works; the Windows icon is embedded via `winres` (MinGW `windres` when cross-compiling from Linux). ## License MIT OR Apache-2.0. See [`LICENSE-MIT`](LICENSE-MIT) and [`LICENSE-APACHE`](LICENSE-APACHE).