Engineering

The Journey to the Next Generation of Lens: A Modern Kubernetes IDE for the Future

Lens Desktop, the world’s most popular Kubernetes IDE with over 1 million users, is about to take a significant leap forward. This journey to creating a new version of Lens has been one of both excitement and challenge, as we’ve worked tirelessly to modernize our architecture and design without sacrificing the power and performance our users rely on.

From Humble Beginnings to a Global Standard

Lens has come a long way since its original inception. It began as a web-based UI designed for single-cluster operations—simple in function, yet transformative for Kubernetes developers. Over time, we built on this foundation, transforming it into a desktop application with Electron, adding multi-cluster management capabilities, and pushing the boundaries of what a Kubernetes IDE could do.

However, despite its success, the current version of Lens was starting to show its age. Architecturally complex and difficult to maintain, it was clear that we needed to refresh both the design and underlying structure to meet the growing needs of our users. Yet, even in its older form, Lens has remained the most powerful Kubernetes IDE available today.

Why Modernization Was Necessary

The decision to modernize wasn’t just about making Lens look fresh. It was about building an IDE that is future-proof, able to scale, and flexible enough to handle the rapidly evolving needs of cloud-native developers. We set out to create a desktop application with best-in-class UI/UX, one that would set new standards for what a modern Kubernetes IDE should be.

The challenge, however, was immense. Modernizing a codebase of this size and complexity is no small task. Often, the most difficult and time-consuming parts of development are invisible to users. For example, one of the significant improvements we wanted was a new navigation system with tabbed views—a feature many desktop applications have, but implementing this in a way that aligned with Lens's multi-cluster nature proved exceptionally challenging.

It’s not just about adding tabs and calling it a day. How do we manage state when switching between different views? What happens to terminal windows when views are switched between clusters? How do we ensure future functionality, even beyond Kubernetes, such as managing AWS infrastructure for EKS clusters, can be easily integrated?

Listening to Our Users

Throughout the development process, we’ve had the privilege of receiving critical and constructive feedback from our early access users. This feedback has been instrumental in shaping the new version of Lens. Our goal has been to meet user expectations while modernizing Lens in a way that positions it as a solid foundation for future growth.

As a result, the new Lens is not only more user-friendly but also more scalable, flexible, and ready to expand into new areas. Whether it’s Kubernetes or other cloud-native technologies, we’re excited about the possibilities the new architecture opens up.

The Road Ahead

As someone deeply involved in the development of Lens and responsible for shaping its direction, I can honestly say this has been a thrilling journey. We never could have anticipated the sheer amount of work required to bring this new version to life, but the result is something we’re incredibly proud of. At the same time, maintaining the high standard of quality that Lens users expect has always been our top priority. We refused to cut corners or release a half-baked product.

And now, with the release just around the corner, I am more excited than ever to see it in the hands of all our users. The future of Lens is bright, and we can’t wait for you to experience the next evolution of the world’s most popular Kubernetes IDE.

Stay tuned—it's coming soon!