Skip to content

troll-warlord/tether

Repository files navigation

⚓ tether

A lightweight, browser-based Kubernetes dashboard

Deploy CI License: MIT Release


What is tether?

tether is a read-friendly Kubernetes dashboard that runs entirely in the browser. It connects directly to any kubectl proxy endpoint — no backend server, no cluster-side install.

Key highlights:

  • 🗂 Full resource browser — all standard resource types with kubectl-style columns, YAML view, and copy
  • 🔭 Helm application graph — visual dependency graph scoped to a Helm release, including references to external secrets, configmaps, PVCs, and service accounts your chart doesn't own
  • 📊 Overview dashboard — pod/deployment/service health charts at a glance
  • 📜 Log streaming — tail pod logs with container selection
  • 🔐 Secret decode — base64-decode secret values inline
  • 🌙 Light / dark theme — follows your OS preference, toggleable

Quick start

Prerequisites

Tool Version
Node.js ≥ 18
kubectl any recent
A running Kubernetes cluster

1 — Start kubectl proxy

kubectl proxy --port=8001

2 — Run tether

git clone https://github.com/troll-warlord/tether.git
cd tether
npm install
npm run dev

Open http://localhost:5173 and enter http://localhost:8001 as the API URL.


Architecture

Browser → kubectl proxy → Kubernetes API server

tether communicates with the Kubernetes API server exclusively through the standard kubectl proxy — there is no backend, no credentials stored outside your machine, and no telemetry.


Tech stack

Layer Technology
UI framework Vue 3 (Composition API)
Build tool Vite 8
Styling Tailwind CSS v3
State management Pinia
Graph visualisation Vue Flow
Charts Chart.js + vue-chartjs
Icons Lucide Vue + official K8s SVG icon set

Supported resources

Group Resources
Workloads Pods, Deployments, StatefulSets, DaemonSets, ReplicaSets, Jobs, CronJobs, HPAs, PodDisruptionBudgets
Network Services, Ingresses, NetworkPolicies, Endpoints
Storage PersistentVolumes, PersistentVolumeClaims, StorageClasses
Configuration ConfigMaps, Secrets, ResourceQuotas, LimitRanges
Access Control ServiceAccounts, Roles, RoleBindings, ClusterRoles, ClusterRoleBindings
Cluster Namespaces, Nodes, Events
Helm Helm Releases (via helm.sh/release.v1 secrets)

Development

npm run dev          # start dev server with kubectl proxy passthrough
npm run build        # production build
npm run lint         # ESLint check (exits non-zero on warnings)
npm run lint:fix     # ESLint auto-fix
npm run format       # Prettier format all src files
npm run format:check # Prettier check (used in CI)

Contributing

See CONTRIBUTING.md.


License

MIT © Tarun Pable

About

A lightweight, browser-based Kubernetes dashboard. Connects via kubectl proxy - no backend, no cluster-side install

Topics

Resources

License

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors