Modern Kubernetes Dashboard - Phase 1 MVP
A lightweight, developer-friendly Kubernetes dashboard built with Go and React.
-
π Flexible Authentication
- Local username/password (with setup wizard)
- OpenID Connect (Keycloak, etc.)
- Kubeconfig upload
-
π Resource Management
- Pods, Deployments, Nodes, Namespaces
- Real-time updates via Kubernetes informers
- Events timeline
-
π¨ Modern UI
- Dark/light theme
- Responsive design
- Built with shadcn/ui
- Go 1.23+
- Node.js 20+
- pnpm
- Kubernetes cluster (kind, minikube, or remote)
# Install dependencies
pnpm install
# Start backend (uses kubeconfig from ~/.kube/config)
pnpm dev:backend
# Start frontend (separate terminal)
pnpm dev:frontendOn first launch, you'll be prompted to create an admin account. No external auth provider required!
| Layer | Technology |
|---|---|
| Backend | Go, Gin, client-go |
| Frontend | React, TypeScript, Vite |
| UI | shadcn/ui, Tailwind CSS |
| Auth | Sessions, OIDC, bcrypt |
| Database | SQLite (embedded) |
βββ cmd/server/ # Go entrypoint
βββ internal/
β βββ api/ # HTTP handlers
β βββ auth/ # Session management
β βββ k8s/ # Kubernetes client
β βββ store/ # SQLite user store
βββ web/ # React frontend
β βββ src/
β β βββ components/ # UI components
β β βββ pages/ # Route pages
β β βββ stores/ # Zustand stores
βββ docker/ # Docker configs
Environment variables (.env.development):
# Kubernetes
KZ_KUBE_CONTEXT=kind-kubezen-dev
# Auth
KZ_AUTH_DEV_BYPASS=false
KZ_AUTH_SESSION_SECRET=your-secret-key
# OIDC (optional)
KZ_AUTH_OIDC_ISSUER=http://localhost:8180/realms/kubezen
KZ_AUTH_OIDC_CLIENT_ID=kubezen-localMIT