JavaFX In Action #17 with Cormac Redmond about KafkIO, the Kafka UI for Engineers and Admins

Out of frustration about the existing (expensive) tools to interact with Kafka clusters, Cormac Redmond created his own beautiful tool that he shares for free!

About Cormac

Cormac Redmond is an “All-things Java / Spring / MicroServices” expert who has been computing and programming from a young age. He has 20 years of professional experience spanning several industries, building everything from complex distributed systems to bespoke intranets and mobile apps. He enjoys fully and deeply understanding any domain or technology and is happiest when working within cultures that value the importance of building clean, elegant, testable, self-documenting systems while adopting forward-thinking practices and techniques.

You can find him on LinkedIn.

About KafkIO

KafkIO is designed for easy, fast, and enjoyable use. It only takes a few clicks before you’re exploring your Kafka clusters. No web servers, configuration files, clunky installation, Docker, or funky licensing! You can seamlessly create/edit/delete/dump/clear topics, produce messages, advanced search and streaming with text, offset, and date range criteria, tweak offsets, delete consumers, and browse/create/update schemas. Easily manage access control lists (ACLs). View your data in a variety of ways. Manage Kafka Connect connectors and ksqlDB (with a flexible KSQL editor). Troubleshoot issues with a clear view of the broker, topic, ksqlDB, connector, and consumer configuration, with live statistics such as partition skew, out-of-sync replicas, consumer lag, etc.

The UI is created with JavaFX and uses different libraries, which are all styled in a very consistent and easy-to-understand way. The application is beautifully designed and an excellent showcase of what can be achieved if a Java backend and JavaFX user interface are combined in one single powerful application!

Video content

00:00 Who is Cormac?

00:45 What is Kafka and KafkIO?

02:28 Demo of KafkIO: How to configure clusters

03:57 Demo: Overview screen

05:02 Demo: Topics and Messages screen

08:02 FX components used in the UI

09:13 Demo: Customers screen

10:05 Demo: Schema Registry screen

10:59 Demo: ACL screen

11:45 Demo: Kafka Connect screen

12:13 Demo: Visualization of streaming live data

13:17 Demo: ksqlDB

15:25 About the layout and some additional tools in KafkIO

18:03 Dynamically loading custom code in KafkIO from a JAR, which is the reason why KafkIO is not native compiled with GraalVM

18:51 Styling the application consistently with Cormac’s self-created tool (similar to ScenicView) and more tips about developing a JavaFX app

25:20 KafkIO is an inspiration for others who want to create an application

26:11 Plans for KafkIO related to open-sourcing

26:57 How Java and JavaFX made the development easier

More JFX In Action…

Click here for more posts with JFX In Action videos.