Skip Navigation

Getting Started

Introduction

What KafkIO is, what it can do, and where it runs.

KafkIO is a desktop application for working with Apache Kafka: browse and produce messages, manage topics, consumer groups, schemas, ACLs, connectors and ksqlDB, and see how your clusters are doing, all from one window. This page explains what it covers, where it runs and how the rest of these docs are laid out.

What is KafkIO?

KafkIO is a native application for Windows, macOS and Linux, aimed at anyone who works with Kafka: the engineer who needs to check what landed on a topic, and the administrator who looks after the clusters. There's no server to deploy and nothing to install on the cluster side. KafkIO connects to your brokers (and, if you use them, Schema Registry, Kafka Connect and ksqlDB) the same way any Kafka client does, using the connection settings you give it.

You can keep any number of clusters in KafkIO and have several connected at once. Each cluster opens in a tab, and you can duplicate that tab to work on several things in the same cluster at once: stream one topic while you search another, or keep an eye on consumer lag while you produce test messages, each in its own tab. Compared with the Kafka command-line tools, you get searchable tables, decoded messages and point-and-click administration; compared with browser-based UIs, there's nothing to host, and your connection details stay on your own machine.

The KafkIO main window in the dark theme. On the left, the Kafka Clusters list shows Storefront Dev and Storefront Prod (eu-west-1), both connected and expanded into their sections, and Storefront Staging, not connected. Across the top are three tabs: Storefront Dev, Storefront Dev (Consumers) and Storefront Prod (eu-west-1). The selected Storefront Dev tab shows the orders topic's Messages tab: a search form, a table of JSON messages and, below it, the selected message formatted as JSON. On the right is the list of topics with their message counts. 1 2 3 4 5 6 7
Two clusters connected, with a second tab open on the development cluster's consumers while the first shows the messages on its orders topic.
  1. Kafka Clusters: your saved clusters. A connected cluster expands into its sections (Overview, Brokers, Topics and so on). The icon colour is one you choose per cluster, for example red for production.
  2. Each connected cluster opens in a tab, and you can open more tabs on the same cluster. This one, Storefront Dev (Consumers), keeps the development cluster's consumer groups open while the first tab shows messages.
  3. Duplicate Tab, next to a section's title, opens that section in a new tab of the same cluster.
  4. A topic's tabs: Overview, Messages, Consumers and Settings.
  5. Search results: one row per message, with its offset, partition, size, time, key and value.
  6. The selected message in full, here formatted as JSON, with its key, headers and raw bytes on the other tabs.
  7. The cluster's topics and how many messages each holds. The star marks a topic as a favourite.

The KafkIO Workspace explains every part of the window.

What you can do

Each connected cluster has the same sections, in the same order. Schema Registry, Kafka Connect and ksqlDB are available once you've added their connection details to the cluster (they're greyed out otherwise).

Cluster overview and brokers

The Overview shows the cluster's version, controller, broker, topic and partition counts, under-replicated partitions and which features (Schema Registry, Kafka Connect, ksqlDB, ACLs) are available to you. Brokers adds per-broker statistics, log directories and broker settings, which you can edit where Kafka allows it. See Cluster Overview and Brokers.

Topics and messages

Find messages from the oldest or newest, from an offset or a point in time, in chosen partitions, optionally filtered by text in the key, value or headers; or Stream Live to watch new messages arrive. Messages are decoded with Schema Registry (Avro, JSON Schema, Protobuf) or as strings, numbers, MessagePack or hex, and shown as JSON, XML, text or hex. Produce single messages or batches, with headers, a chosen partition, saved templates and ${…} variables for unique values; dump a topic to a file; create, edit, clear, re-create and delete topics. Start with The Topics List and Searching Messages.

Consumers

See every consumer group with its members, the topics it reads, its state and its lag, in total and per topic. Move a group's offsets (for example to replay from a point in time) and delete groups you no longer need. See Consumers.

Schema Registry

Browse subjects and every version of their schemas, create and update Avro, JSON Schema and Protobuf schemas, check a new version's compatibility before you register it, change compatibility levels, and delete subjects or versions. See Schema Registry.

ACLs

View, filter, create and delete access control lists, on clusters where your user is allowed to. See Access Control Lists.

Kafka Connect and ksqlDB

Across one or more Kafka Connect clusters, see each connector's status and tasks, create, edit and delete connectors, pause, resume, stop and restart them (or just their failed tasks), and reset their offsets. For ksqlDB, run statements in the KSQL editor and browse streams, tables, queries and connectors. See Kafka Connect and ksqlDB.

Tools

The Tools menu has a Network Tool to check that a host and port can be reached, a JKS Converter to turn PEM or PKCS12 certificates and keys into Java keystores, and a Sample Docker Compose file for a local Kafka to try things against. See Tools.

Supported platforms

KafkIO runs on:

  • Windows (x64): an MSI installer or a portable ZIP, also available through Scoop.
  • macOS, with separate builds for Apple Silicon (arm64) and Intel (x64): a DMG or a portable ZIP, also available through Homebrew.
  • Linux (x64): a .deb or .rpm package, or a portable archive.

Each download includes everything KafkIO needs to run, so you don't have to install Java. You can also run it from a USB stick, with its configuration stored alongside it (see Memory Stick Mode). Installation & Updates covers each platform.

Supported Kafka distributions and services

KafkIO talks to Kafka with the standard Kafka client protocol and to Schema Registry, Kafka Connect and ksqlDB through their REST APIs, so it works with:

  • Apache Kafka, including Kafka 4 and clusters running in KRaft mode
  • Confluent Platform (including 8 and later) and Confluent Cloud
  • Amazon MSK, including IAM authentication
  • Azure Event Hubs (Kafka endpoint), including Microsoft Entra ID (OAuth)
  • Aiven for Apache Kafka, including Karapace as the schema registry
  • Strimzi on Kubernetes
  • WarpStream, including its schema registry

Plaintext, SSL/TLS (including mutual TLS) and SASL (PLAIN, SCRAM, GSSAPI/Kerberos, OAUTHBEARER and AWS MSK IAM) are all supported, with certificates and keys as PEM, PKCS12 or JKS. What a provider needs is in Provider Recipes; the options themselves are in Security & Authentication.

Free and private

KafkIO is free for personal and commercial use, under the terms of its licence. There are no ads, paid tiers or accounts. If it's useful to you, donations help cover the cost of building and hosting it; the heart button in KafkIO's toolbar opens the same page.

Your cluster details, credentials and messages stay on your machine: KafkIO only sends them to the clusters and services you configure. Apart from those connections, the only call KafkIO makes on its own is a periodic check for new versions. Privacy has the details.

How these docs are organised

The docs follow the app:

  • Getting Started: install KafkIO, connect to a first cluster (Quick Start) and find your way around the window.
  • Connecting to Clusters: the cluster dialog, security, Schema Registry, Kafka Connect and ksqlDB connections, provider recipes and troubleshooting.
  • Topics & Messages: everything on a topic, from searching and streaming to producing and dumping.
  • Working with a Cluster: the other cluster sections, from Overview to ksqlDB.
  • Tools and Preferences: the built-in utilities and every setting.
  • Help & Reference: shortcuts, file locations, serializers, a glossary and how to get help.

Names of buttons, menus and fields appear as they do on screen. Screenshots carry numbered markers that match the list beneath them (hover a list item to find its marker), and you can click a screenshot to see it full size.