Skip to content

Iris ​

Iris is a visual testing tool for distributed applications — think "Postman for message brokers." It eliminates the need to write boilerplate code for publishing and consuming messages, providing a desktop GUI for testing event-driven architectures.

Key Features ​

Supported Brokers ​

Connect to and test with multiple message broker systems:

  • RabbitMQ — Queues, exchanges, and routing via EasyNetQ Management Client
  • Azure Service Bus — Queues and topics with native Azure SDK support
  • Azure Storage Queues — Simple messaging scenarios
  • AWS SQS — Amazon Simple Queue Service

Framework Adapters ​

Automatically wrap messages in framework-specific envelopes so your broker consumers process them correctly:

  • MassTransit — MassTransit message envelope format
  • NServiceBus — NServiceBus message wrapping
  • EasyNetQ — EasyNetQ envelope format
  • Wolverine — Wolverine message format

Select a framework adapter and Iris handles the envelope wrapping — no need to manually construct framework-specific JSON.

Message Publishing ​

Send messages to queues and topics with a visual editor:

  • Monaco-based JSON editor for composing message payloads
  • Endpoint selector for choosing the target queue, topic, or exchange
  • Framework selector for automatic envelope wrapping
  • Custom headers and properties support

Message Consumption ​

Listen to and inspect incoming messages in real-time directly from the Iris UI.

Auto-Discovery ​

Iris automatically detects local broker instances to reduce setup friction:

  • RabbitMQ — Detects running Docker containers
  • Azure Storage Emulator — Detects local Azure storage emulation

Message Templates ​

Save and reuse common message patterns to avoid repetitive setup when testing the same endpoints.

Dynamic Type Loading ​

Load your application's .NET assemblies at runtime to work with your actual message contracts. Iris reflects types from loaded assemblies, letting you compose messages that match your application's exact data structures.

Message History ​

Every sent and received message is persisted locally for auditing and replay. Browse, search, and re-send previous messages.

Multi-Connection Management ​

Connect to multiple brokers simultaneously and switch between them. Manage connections to different environments (local, dev, staging, production) side by side.

Endpoint Discovery ​

Iris automatically lists all available queues, topics, and exchanges from connected brokers — no need to manually enter endpoint names.

Cross-Platform ​

Runs on Windows, macOS, and Linux.

Architecture ​

Iris is built on .NET with Blazor and uses Hermes for cross-platform desktop hosting. It follows a provider pattern for broker abstraction — each broker type (RabbitMQ, Azure, AWS) implements a common IConnector/IConnection interface, making it straightforward to add new broker support. Uses the Mythetech Framework for settings, message bus, and desktop services.

Getting Started ​

Visit the Iris GitHub Repository for installation and usage instructions.

Last updated: