DEV Community

Cover image for Introducing Kafma: A Desktop Kafka UI for Faster Debugging
KafmaKarma for Kafma

Posted on

Introducing Kafma: A Desktop Kafka UI for Faster Debugging

Kafma is a desktop Kafka GUI client and IDE for macOS, Windows, and Linux. It keeps the consume–inspect–produce loop in one workspace and lets you clone remote topics—with their configurations, schemas, and a selected range of messages—into a local cluster for testing, with optional field masking.

Disclosure: I'm the creator of Kafma. It is closed-source software with Free and Pro plans.

Debug Kafka in one workspace

A topic opens as a tab in Kafma. Messages appear at the top, while the producer stays open at the bottom. You can send a message, inspect the result, change the payload, and send it again without leaving the topic tab.

Each topic keeps its own state, so several investigations can remain open at the same time. Live tails new messages as they arrive. Watch Group opens a bounded window around a consumer group's committed positions, showing consumed and pending records alongside member status, lag, and backlog.

Kafma automatically decodes Avro and Protobuf records using the configured Schema Registry. Expand a record to inspect its decoded key and value, headers, timestamp, partition, offset, and schema metadata. From there, you can replay it to a topic in the same cluster. Pro also supports forwarding records to another cluster and exporting results as JSON or CSV.

The producer handles JSON, text, Avro, and Protobuf. It can send a single record or run on a timed loop. With schema-based auto-generation enabled, each interval creates a fresh schema-compatible payload. That makes it possible to exercise a consumer and inspect the results from the same topic tab.

Kafma producing and consuming Kafka messages in the same topic tab

Clone remote topics for local testing

Some failures depend on the configuration, schemas, and records in a remote environment. Recreating that context locally often requires exports, scripts, and manual setup.

With Pro, Kafma's Data Clone makes a one-time, bounded copy between connected clusters. The Free plan supports same-cluster clones. Select one or more topics, choose a time window or offset range, and copy the topic structure, the schema versions required by the selected records, and the records themselves. You can also copy structure and schemas without data when you want to produce your own test records.

This is intended for focused debugging and test setup, not continuous cluster replication. Data Clone does not join a consumer group, commit offsets, or modify topics, messages, or schemas on the source. On the target, Kafma can create missing topics and register the required schemas; copied records are appended rather than overwriting existing records.

Optional masking rules transform selected fields in schema-backed message values before records are written to the target cluster. A pre-flight plan shows the selected range, schemas, masking rules, and planned target operations before the clone begins. Together, those controls make it practical to bring the context around a remote failure into a local or test cluster without writing back to the source.

Kafma cloning a remote Kafka topic into a local cluster with field masking

Review schema changes before publishing

Kafma includes a Schema Registry workspace for Avro, JSON Schema, and Protobuf. When you create a new version, the selected registered version appears beside an editable draft. The diff updates as you type, making added and removed lines visible before the new version reaches the registry.

You can browse version history, generate mock data from a registered schema, and validate a JSON payload against a selected version in Schema Lab. When you publish a draft, Kafma runs the Schema Registry compatibility check as part of the same workflow and shows the result alongside the changes.

Kafma schema editor showing a draft diff against a registered version

More than a message browser

The same desktop app also covers the operational work around a debugging session. You can inspect consumer-group members, assignments, committed offsets, and partition lag; reset or delete offsets; and manage topics while viewing broker and topic configuration.

Connections can be marked read-only to block Kafka and Schema Registry writes. Selecting Production turns on read-only mode automatically, though you can turn it off when writes are required. A Data Clone into a writable production target also requires typed confirmation. Kafma keeps a local activity log for operations performed in the app and can revert supported configuration and offset changes.

Kafma connects to self-hosted Kafka, Confluent Cloud, and Amazon MSK, with support for SASL, mTLS, OAuth, and AWS IAM authentication.

Available on macOS, Windows, and Linux

Kafma connects directly from your device to the Kafka clusters and Schema Registries you configure. Kafka data does not pass through Kafma's servers, and the app has no accounts, analytics, or telemetry.

The Free plan includes the core produce, consume, live-tail, schema-decoding, topic and consumer-group management, Schema Registry workflows, and same-cluster cloning. Pro adds unlimited clusters and tabs, cross-cluster cloning and forwarding, message export, and a higher Console message limit. Download Kafma to get started with the Free plan, or see pricing for Pro.

The Kafma 1.0 changelog contains the complete feature list and more screenshots.

What is the most frustrating part of your Kafka debugging workflow today?

Top comments (0)