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
Top comments (0)