kdash is a free, open source monitoring & observability project written in Rust and released under MIT. It has 2,537 GitHub stars, 95 forks and 3 open issues, and was last pushed 9 days ago. On this registry it ranks #148 of 271 tracked projects in Monitoring & Observability, with 5 head-to-head comparisons available.

What is kdash?

KDash is a simple and fast terminal dashboard for Kubernetes, written in Rust and released under the MIT licence, built for developers, SREs and platform engineers who inspect and operate clusters from a shell rather than a browser.

What it is

KDash is a text user interface (TUI) dashboard for Kubernetes, distributed as the Rust crate kdash and as the Docker image deepu105/kdash. It lives in the Kubernetes tooling ecosystem under Infrastructure & Operations / Monitoring & Observability, alongside the cluster it observes, and it renders cluster state directly in the terminal: workloads, container logs, utilization and node status, driven entirely by keyboard shortcuts. It is packaged for Homebrew on macOS and Linux, Scoop and Chocolatey on Windows, and the AUR on Arch Linux, and it carries the topics dashboard, k8s, kubernetes, monitoring, rust and tui.

The concrete problem it solves is the constant switching between raw kubectl invocations and a browser-based dashboard during routine cluster work. Before version 2.0, an operator who spotted a problem while watching a cluster had to leave the dashboard, retype a command, and return to see the result. KDash 2.0 closes that loop with resource management actions that run from inside the dashboard, so deleting a resource, editing a manifest in $EDITOR, restarting a rollout, scaling a workload, cordoning a node, or triggering a CronJob no longer requires leaving the view that revealed the problem. Port-forwarding is handled in the same place, which removes the need to run and track a separate tunnel command by hand.

Key capabilities

  • Delete any resource with Ctrl-d, with impactful actions guarded by a confirmation prompt.
  • Edit any resource in your $EDITOR with e, without copying a manifest out of the dashboard first.
  • Rollout restart workloads with r, view previous container logs with p, scale workloads, cordon nodes, and suspend, resume or trigger CronJobs from the action menu (m).
  • Port-forward a Pod or Service with f, then list and stop active forwards with Shift+F; forwards run in the background and are stopped when KDash quits.
  • Toggle timestamps (t) and line wrap (w) while viewing container logs.
  • Switch themes on the fly with t and Alt+t across Gruvbox Dark, Solarized Dark, Mono, Catppuccin Macchiato and Latte, plus an optional custom theme.
  • Read a utilization view that includes a cluster summary pane, backed by a refreshed UI with cleaner hints, headers, help, notifications and gauges, and a two-column help page.

Who uses it and how

  • SREs and platform engineers triaging live clusters from a remote shell or jump host, where a browser dashboard is not reachable.
  • Developers debugging a workload locally: reading previous container logs, restarting a rollout, and port-forwarding a Service to reach it from localhost without a separate tunnel command.
  • Operators handling day-to-day resource changes such as scaling a workload, cordoning a node, or triggering a CronJob from a single keyboard-driven view.
  • Teams with a house terminal theme, using the custom theme option or cycling the built-in themes to match existing tooling.
  • Mixed-platform teams installing through Homebrew on macOS and Linux, Scoop or Chocolatey on Windows, or the AUR on Arch.

Getting started

Install with Homebrew using brew tap kdash-rs/kdash followed by brew install kdash, or on Windows through the Scoop bucket kdash-bucket. Alternatives documented in the README include the Chocolatey package, the AUR packages for Arch Linux, the kdash crate on crates.io, and the Docker image deepu105/kdash.

How it compares

The provided facts name no comparable tools and no paid products that KDash replaces, so it stands alone in this registry on that axis. Any comparison with browser-based dashboards or commercial cluster consoles would have to be drawn from sources outside this entry.

When to use it — and when not to

Choose KDash when the working environment is a terminal and the operator already has a working kubeconfig, since that is the entire delivery model: a binary or a container image, no server component and no hosted option mentioned in the README. Do not choose it if a graphical or shared multi-user browser dashboard is a requirement, or if the team is unwilling to run cluster-mutating actions from a TUI. The README carries a "Limitations / Known issues" section, and that section should be read before relying on KDash for critical operations, particularly given the small open-issue count and the breadth of the action set added in version 2.0.

project readme (upstream, from github) — read inline

KDash - A fast and simple dashboard for Kubernetes

ci cd License LOC crates.io link Docker Release Release Coverage GitHub Downloads Docker pulls Crates.io downloads

Follow Deepu K Sasidharan (deepu105)

logo

A simple terminal dashboard for Kubernetes built with Rust Follow @kdashrs

UI

Contents

What's new in 2.0

  • Resource management actions let you act on what you're watching without leaving KDash: delete any resource (Ctrl-d), edit any resource in your $EDITOR (e), rollout restart workloads (r), view previous container logs (p), scale workloads, and cordon nodes or suspend/resume/trigger CronJobs from a new action menu (m). Impactful actions are guarded by a confirmation prompt.
  • Port-forward a Pod or Service with f, then list and stop active forwards with Shift+F. Forwards run in the background and are stopped when you quit KDash.
  • Log view options toggle timestamps (t) and line wrap (w) while viewing container logs.
  • More themes and runtime cycling added Gruvbox Dark, Solarized Dark, and Mono alongside Catppuccin Macchiato and Latte, switchable on the fly with t/Alt+t, plus an optional custom theme.
  • Refreshed UI cleans up hints, headers, help, notifications, and gauges, lays the help page out in two columns, and adds a cluster summary pane to the utilization view.

Sponsors

Thanks to the sponsors of @deepu105 who makes maintaining projects like KDash sustainable. Consider sponsoring if you like the work.

Installation

Homebrew (Mac & Linux)

brew tap kdash-rs/kdash
brew install kdash

# If you need to be more specific, use:
brew install kdash-rs/kdash/kdash

To upgrade

brew upgrade kdash

Scoop (Windows - Recommended way)

scoop bucket add kdash-bucket https://github.com/kdash-rs/scoop-kdash

scoop install kdash

Chocolatey (Windows)

Chocolatey package is located here. Since validation of the package takes forever, it may take a long while to become available after a release. I would recommend using Scoop instead for Windows.

choco install kdash

# Version number may be required for newer releases, if available:
choco install kdash --version=2.1.1

To upgrade

choco upgrade kdash --version=2.1.1

Arch Linux (AUR)

KDash is on the AUR in two flavors. Install with an AUR helper like yay or paru:

# Prebuilt release binary (no compile)
yay -S kdash-bin

# Build from the released source
yay -S kdash

# Build from the latest git main
yay -S kdash-git

Cargo

If you have Cargo installed then you install KDash from crates.io

cargo install kdash

# if you face issues with k8s-openapi crate try the below
cargo install --locked kdash

You can also clone the repo and run cargo run or make to build and run the app

Nix (Maintained by third party)

Try out kdash via nix run nixpkgs#kdash or add kdash to your configuration.nix for permanent installation.

Install script

The quickest way to grab the latest release binary without a package manager. The script downloads the right build for your platform and verifies it against the published SHA-256 checksum before installing.

Linux and macOS (installs to ~/.local/bin by default, no sudo needed):

curl -fsSL https://raw.githubusercontent.com/kdash-rs/kdash/main/scripts/install.sh | sh

Useful flags:

  • --version vX.Y.Z: install a specific release instead of the latest
  • --prefix : install somewhere else, e.g. --prefix /usr/local/bin
  • --quiet: only print errors

Pass flags through the pipe with sh -s --:

curl -fsSL https://raw.githubusercontent.com/kdash-rs/kdash/main/scripts/install.sh | sh -s -- --prefix ~/bin

Windows (installs to %LOCALAPPDATA%\Programs\kdash):

irm https://raw.githubusercontent.com/kdash-rs/kdash/main/scripts/install.ps1 | iex

To also append the install directory to your user PATH, run it with -AddToPath:

& ([scriptblock]::Create((irm https://raw.githubusercontent.com/kdash-rs/kdash/main/scripts/install.ps1))) -AddToPath

Note: The older deployment/getLatest.sh script still works but is deprecated in favor of install.sh, which adds checksum verification and --version pinning.

Manual

Binaries for macOS (x86_64, arm64), Linux GNU/MUSL(x86_64, armv6, armv7, aarch64) and Windows (x86_64, aarch64) are available on the releases page

  1. Download the latest binary for your OS.
  2. For Linux/macOS:
    1. cd to the file you just downloaded and run tar -C /usr/local/bin -xzf downloaded-file-name. Use sudo if required.
    2. Run with kdash
  3. For Windows:
    1. Use 7-Zip or TarTool to unpack the tar file.
    2. Run the executable file kdash.exe

Docker

Run KDash as a Docker container by mounting your KUBECONFIG. For example the below command for the default path

docker run --rm -it -v ~/.kube/config:/root/.kube/config deepu105/kdash
# If you want localhost access from the container
docker run --network host --rm -it -v ~/.kube/config:/root/.kube/config deepu105/kdash

You can also clone this repo and run make docker to build a docker image locally and run it using the above command

Troubleshooting

Note: This may not work properly if you run Kubernetes locally using Minikube or Kind

Note: On Debian/Ubuntu you might need to install libxcb-xfixes0-dev and libxcb-shape0-dev. On Fedora libxcb and libxcb-devel would be needed.

Note: On Linux you might need to have package xorg-dev (Debian/Ubuntu) or xorg-x11-server-devel (Fedora) or equivalent installed for the copy to clipboard features to work

Note: If you are getting compilation error from openSSL. Make sure perl and perl-core are installed for your OS.

Usage

kdash

Press ? while running the app to see keybindings.

Keybindings

KDash is keyboard-driven. Press ? in the app for the full, always-current list (it also reflects any overrides from your config). The common keys:

Navigation

Key Action
? Help page
q / Ctrl-c Quit
Esc Go back / close the current page
(or k j) Move selection / scroll
(or h l) Switch resource tab
PgUp PgDn / Home End Scroll a page / jump to top or bottom
Tab / Shift+Tab Cycle main views forward / back
Ctrl-h Reset navigation to the root view
Enter Select row / drill into a resource
/ Filter the current view
Ctrl-r Refresh data
1-0, - Jump straight to a resource tab
t / Alt+t Cycle theme forward / back

Resource actions

Key Action
m Action menu for the selected resource
d / y Describe / view YAML
e Edit in $EDITOR
Ctrl-d Delete (with confirmation)
r

readme truncated — read the full docs on github

Frequently asked questions

Is kdash free to use?

kdash is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does kdash do?

A simple and fast dashboard for Kubernetes

What is kdash written in?

kdash is primarily written in Rust. Its source is publicly available at https://github.com/kdash-rs/kdash, and it has 2,537 GitHub stars.