Almost 2 years ago, my colleague Sergii Kamenskyi started working on a web UI for Nakadi. So far it has been used internally at Zalando, providing our users with an easy way to find out about the data that flows through Nakadi. Last Friday, after getting approval from our open source team, Sergii released nakadi-ui with an open source license, and anyone who deploys Nakadi can now deploy the web UI as well.
Nakadi-ui is written in Elm, a functional language for web development, which I learned by reviewing some of Sergii’s pull requests. As far as I know, nakadi-ui is one of the largest open source codebase in Elm so far. And pretty much all of it was written by Sergii alone!
Nakadi-ui allows users to create and browse event types and subscriptions. They can see the details of an event type, such as the schema, retention period, authorization policy, and more. They can also get a list of producers and consumers, and even inspect the events in the event type. They can make changes to the event types they are allowed to edit, and delete them if necessary. For subscriptions, users can get the details of the subscriptions, as well as statistics about the number of unconsumed events, or the lag for each position. As we add new features to Nakadi, Sergii keeps improving nakadi-ui, so you can expect exciting new things coming soon!
Users of Nakadi tell us that the UI makes it much easier to use Nakadi and monitor their event types and subscriptions. Engineers use it to debug issues and recover from incidents; users who do not have a strong technical background also use it, to inspect event types and find out who is consuming which data; and operators of Nakadi, such as myself, use it to help troubleshoot users’ issues, test new features, or keep tabs on the system health.
You can get the code on GitHub. Bug reports, feature requests, and of course, pull requests, are very welcome to help us make nakadi-ui event better. As per the rules at Zalando, nakadi-ui is currently in the Zalando incubator. We will spend time, together with Zalando’s open source team, to build a community around it. We hope that nakadi-ui will soon graduate to a “proper” open source project!