🚀 Interactive Kubernetes Dashboard Generator powered by Generative UI
A hackathon project for "The UI Strikes Back" by WeMakeDevs
Kubernetes observability today is broken:
- ❌ Dashboards are static and overloaded
- ❌ Users must learn the UI before solving problems
- ❌ Information is scattered (pods, logs, events, metrics)
- ❌ Existing tools don't adapt to user intent
👉 This project replaces static dashboards with an AI-driven, intent-based UI.
Instead of a fixed Kubernetes dashboard, the app starts empty and builds the UI dynamically based on what you ask — using natural language, Generative UI, and tools.
User describes intent → AI selects K8s tools → Tambo renders exact UI needed
There is no dashboard by default. The UI only exists when you ask for it.
- Kubernetes container management
- Real-time container metrics (CPU, memory usage)
- Dynamic UI rendering based on user intent
- Create new containers on-demand
- Live error logs with AI explanations
- AI-powered pod analysis
- Responsive landing page
- Metrics visualization
- Pod comparison tools
- AI-powered "Fix It" suggestions
- Pod health monitoring
- Natural Language Interface - Ask questions in plain English
- Generative UI - Interface builds itself based on your needs
- Real-time Monitoring - Live logs and metrics
- AI Error Analysis - Understand why pods are failing
- Smart Comparisons - Compare resource usage across pods
- Intent-Based Design - No pre-built dashboards, only what you need
# View cluster resources
"Show cluster overview"
"Show memory and CPU usage"
# Pod management
"List pods in error-testing namespace"
"Show all pods in default namespace"
"Show pods that need attention"
# Monitoring & Health
"Monitor pod health"
"Track pod status in kube-system"
"Show resource usage"
# Debugging
"Show logs of payment-service container"
"Why is db-error-app-6488467855-lg8v5 failing?"
"Explain these errors"
# Comparisons
"Compare CPU and memory of payment-service vs billing-service"
"Compare CPU of pod-a, pod-b, and pod-c"
- Node.js 18+
- Kubernetes cluster (local or remote)
- kubectl configured
- MongoDB Atlas account (or local MongoDB)
- npm or yarn
# Clone the repository
git clone https://github.com/AymaanPathan/InfraPilot.git
cd InfraPilot/backend
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env
# Edit .env and add your actual API keys and configuration
# Start the backend server
npm run devThe backend will run on http://localhost:8000 (or your configured port).
# Navigate to frontend directory
cd ../frontend
# Install dependencies
npm install
# Set up environment variables
cp .env.local.example .env.local
# Edit .env.local and add your Tambo API key
# Start the development server
npm run devOpen http://localhost:3000 to see InfraPilot in action.
- Start the app → Empty canvas with chat interface
- Type your intent → Natural language command
- AI processes → Groq AI reasons about your intent
- Tools execute → Kubernetes MCP tools fetch data
- UI renders → Tambo generates the exact interface you need
1. "list pods in error-testing namespace"
→ Shows pod list with status indicators
2. "compare logs of payment-service and billing-service"
→ Renders side-by-side log viewer
3. "explain these errors"
→ AI analyzes logs and provides insights
4. "show resource usage"
→ Displays CPU/memory charts
5. "monitor pod health"
→ Real-time health dashboard appears
6. "show pods that need attention"
→ Filtered view of problematic pods
┌─────────────┐
│ User │
│ (Browser) │
└──────┬──────┘
│ Natural Language
▼
┌─────────────┐
│ Next.js │
│ Frontend │
└──────┬──────┘
│
▼
┌─────────────┐ ┌──────────────┐
│ Groq AI │◄────►│ Tambo UI │
│ Reasoning │ │ Generator │
└──────┬──────┘ └──────────────┘
│
▼
┌─────────────┐
│ K8s │
│ Tools │
└──────┬──────┘
│
▼
┌─────────────┐
│ Kubernetes │
│ Cluster │
└─────────────┘
Aymaan Pathan - www.linkedin.com/in/pathan-aymaan
⭐ Star this repo if you find it useful!
Made with ❤️ for better Kubernetes observability