Skip to main content

Tech Stack

Backend

TechnologyPurpose
Go 1.23Primary language
GinHTTP framework
GORMORM (SQLite + PostgreSQL)
client-goKubernetes API client & Informer
gorilla/websocketWebSocket connections
zapStructured logging
pquerna/otpTOTP 2FA implementation

Frontend

TechnologyPurpose
React 19UI framework
TypeScriptType safety
ViteBuild tool & dev server
shadcn/uiComponent library (Radix + Tailwind)
TanStack Query v5Server state management & cache
Monaco EditorYAML editing + syntax highlighting
xterm.jsWeb terminal emulator
RechartsOverview charts
i18nextInternationalization (EN/ZH)

Database

ModeEngineUse Case
DevelopmentSQLiteZero-config, file-based
ProductionPostgreSQLScalable, concurrent access

Both engines are abstracted through GORM — switch with a single config change.

Why These Choices?

  • Go + Gin: Fast compilation, low memory, excellent Kubernetes ecosystem (client-go)
  • React + shadcn/ui: Modern component library with full customization via Tailwind
  • TanStack Query: Eliminates manual cache management, automatic refetch/invalidation
  • Informer + WebSocket: Industry-standard pattern for real-time K8s dashboards
  • GORM: Database-agnostic ORM, easy migration between SQLite and PostgreSQL