Skip to content
vic

kdash-rs/kdash

A simple and fast dashboard for Kubernetes

kdash-rs/kdash.json
{
"createdAt": "2021-04-13T05:38:42Z",
"defaultBranch": "main",
"description": "A simple and fast dashboard for Kubernetes",
"fullName": "kdash-rs/kdash",
"homepage": "https://kdash.cli.rs",
"language": "Rust",
"name": "kdash",
"pushedAt": "2025-10-17T07:02:24Z",
"stargazersCount": 2385,
"topics": [
"dashboard",
"hacktoberfest",
"k8s",
"kubernetes",
"monitoring",
"rust",
"tui"
],
"updatedAt": "2025-11-23T14:22:09Z",
"url": "https://github.com/kdash-rs/kdash"
}

KDash - A fast and simple dashboard for Kubernetes

Section titled “KDash - A fast and simple dashboard for Kubernetes”

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

Follow Deepu K Sasidharan (deepu105)

![logo]!(artwork/logo.png)

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

![UI]!(screenshots/ui.gif)

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

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

To upgrade

Terminal window
brew upgrade kdash
Terminal window
scoop bucket add kdash-bucket https://github.com/kdash-rs/scoop-kdash
scoop install kdash

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.

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

To upgrade

Terminal window
choco upgrade kdash --version=0.4.3

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

Terminal window
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

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

Run the below command to install the latest binary. Run with sudo if you don’t have write access to /usr/local/bin. Else the script will install to the current directory. Alternatively, set BIN_DIR environment variable e.g. BIN_DIR=~/.local/bin to override the default install location.

Terminal window
curl https://raw.githubusercontent.com/kdash-rs/kdash/main/deployment/getLatest.sh | bash

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

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

Terminal window
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

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.

Terminal window
kdash

Press ? while running the app to see keybindings

  • -h, --help: Prints help information
  • -V, --version: Prints version information
  • -t, --tick-rate <tick-rate>: Set the tick rate (milliseconds): the lower the number the higher the FPS.
  • -p, --poll-rate <poll-rate>: Set the network call polling rate (milliseconds, should be multiples of tick-rate): the lower the number the higher the network calls.
  • -d, --debug[=<debug>]: Enables debug mode and writes logs to kdash-debug-<timestamp>.log file in the current directory. Default behavior is to write INFO logs. Pass a log level to overwrite the default [possible values: info, debug, trace, warn, error]
  • [Linux/Docker] Copy to clipboard feature is OS/arch dependent and might crash in some Linux distros and is not supported on aarch64 and arm machines.
  • [macOS] KDash looks better on iTerm2 since macOS’s default Terminal app makes the colors render weird.
  • [Windows] KDash looks better on CMD since Powershell’s default theme makes the colors look weird.
  • [Windows] If using k3d for local clusters, set the server URL to 127.0.0.1 as 0.0.0.0 doesn’t work with kube-rs. You can use k3d cluster create --api-port 127.0.0.1:6550 or change the cluster.server value in your .kube/config for the k3d cluster to 127.0.0.1:<port>.
  • CLI info
  • Node metrics
  • Resource watch (configurable polling interval with -p flag)
  • Custom resource definitions
  • Describe resources & copy the output
  • Get YAML for resources & copy the output
  • Stream container logs
  • Context
    • Context info
    • Context watch
    • Change namespace
    • Context switch
  • Resources utilizations for nodes, pods and namespaces based on metrics server. Requires metrics-server to be deployed on the cluster.
  • Dark/Light themes
  • Sensible keyboard shortcuts
  • Global glob filtering for resource names

![UI]!(screenshots/overview.png)

![UI]!(screenshots/logs.png)

![UI]!(screenshots/describe.png)

![UI]!(screenshots/contexts.png)

![UI]!(screenshots/utilization.png)

K9S is a beast compared to this as it offers way more features including CRUD actions.

KDash only offers a view of the resources with a focus on speed and UX. Really, if something is slow or has bad UX then please raise a bug. Hence the UI/UX is designed to be more user-friendly and easier to navigate with contextual help everywhere and a tab system to switch between different resources easily.

At least for now, there are no plans to add full CRUD for resources but in the future, we might.

MIT