KubeVerse — A Living Kubernetes City
Inspiration
Inspired by Marshall Wace's New Worlds theme, we wanted to explore a world where Kubernetes, rather than money, powers an entire city's economy.
Kubernetes can be difficult to understand, especially when trying to visualise how different components interact. We wanted to turn something complex and invisible into a living, interactive world that anyone could explore.
What it does
KubeVerse transforms a real Kubernetes-powered online shop into a living 3D city.
Every building represents a microservice, power stations represent nodes, little units outside buildings represent pods, and roads filled with moving vehicles visualise requests travelling between services.
But the city isn't just a visualisation. Users can interact with the infrastructure by scaling pods, deploying buggy versions, or sabotaging services, watching the consequences ripple across the city in real time.
We also built interactive shopping journeys that let users follow requests through different services, understand failures, and see how Kubernetes responds, with beginner-friendly explanations alongside the technical details.
How we built it
We built the frontend using React, TypeScript, Vite, and Three.js to create the interactive 3D city.
Our backend uses FastAPI to connect the environment to a real Kubernetes cluster running a containerised microservice-based online shop.
Kubernetes events, service activity, and request data drive the city's behaviour, while our simulation brings everything to life through animations, traffic, and visual effects.
Challenges we ran into
One of our biggest challenges was getting Docker and Kubernetes working consistently across everyone's machines.
We also faced difficulties integrating TigerData and Vultr, alongside the challenge of translating complex Kubernetes behaviour into a smooth, understandable 3D simulation.
Therefore, we managed to host the website on vultr
Balancing technical accuracy with an engaging visual experience was particularly challenging.
Accomplishments that we're proud of
We're proud that KubeVerse isn't just a static simulation. We connected a real Kubernetes application to an interactive world where infrastructure changes have visible consequences.
We're also proud of building a smooth 3D environment, interactive failure scenarios, and request journeys that make Kubernetes easier to explore and understand.
What we learned
We gained a much deeper understanding of Kubernetes, Docker, microservices, and how distributed systems communicate and recover from failures.
We also learned a lot about real-time visualisation, 3D development, and integrating complex backend infrastructure with an interactive frontend.
Most importantly, we learned how to make complicated technical concepts more accessible through visual storytelling.
What's next for KubeVerse
We want to expand the city with more detailed environments, richer animations, and additional failure scenarios.
Our long-term goal is to make KubeVerse work with different Kubernetes applications and eventually allow developers to connect their own GitHub repositories and explore their infrastructure as a living city.
Built With
- React
- TypeScript
- Vite
- Three.js
- FastAPI
- Python
- Kubernetes
- Docker