kui

A hybrid command-line/UI development experience for cloud-native development

Github stars Tracking Chart

The Kui Framework for Graphical Terminals

Build Status
License
codecov
Type Coverage

Kui offers a new development experience for building cloud-native
applications. By combining the power of familiar CLIs with
visualizations in high-impact areas, Kui enables you to manipulate
complex JSON and YAML data models, integrate disparate tooling, and
provides quick access to aggregate views of operational data.

Quick Install

We offer prebuilt releases that offer Kubernetes support:

Kui-MacOS.tar.bz2 **, ** Kui-Linux-x64.zip **, ** Kui-Win32-x64.zip

These clients leverage the core framework hosted in this repository,
combined with the Kubernetes plugins hosted
here. Visit the Kui
Installation Guide
for installation details and
alternative installation options.

Contributing

If you want to help, please take a look at our guidelines and developer guide. If you want to develop your own custom client, using the Kui framework, check out the
API docs.

The Kui Experience

Kui screenshot

Click the image to see Kui in
motion
. For more of the backstory of
Kui, read on!

This is a CLI, with Visualizations on the Side

Kui uses Electron to provide you with an
augmented but CLI-focused development experience. By using Electron,
the same experience carries over, from local development on your
laptop, to a browser-based experience.

When running locally, you will have access to your filesystem and your
favorite terminal and text editor. To help with complex data, Kui
offers a suite of visualizations. You can gracefully flip between
the terminal and these visualizations, without having to switch to
your browser, log in, wait for pages to load, and navigate through
complex menu structures.

For example, to see a visual summary of your Kubernetes pods, issue
this command from your favorite terminal:, Example Command, Thumbnail of Output, :--------------------------, :------------------------------------------------------------------------------------------------, kubectl kui get pods --ui, , Without the --ui option, Kui will display the output in your
terminal directly; you will observe that the output is identical to
that of kubectl, with the possible addition of syntax
coloration. With Kui, you have the power to navigate between these
modes in a graceful and flexible manner.

Now try clicking on a row. You should see the "sidecar" sweep in from
the right. This split screen mode allows you to drill down to the
details of your pods. You can click on one, then another, for rapid
inspection of several of your resources. The animated gif should give
you a sense of the possibilities (click on it to see a larger
version).

Kui as a Tool Platform

Kui can form the basis for delivering CLI-driven GUI experiences. Here
are a few such uses of Kui:

  • Apache OpenWhisk visualizations: Oui

If you want to create your own client, with a custom theme, custom
icons, and an enhanced set of commands, you can start here:

Overview

Name With Ownerkubernetes-sigs/kui
Primary LanguageTypeScript
Program languageJavaScript (Language Count: 11)
Platform
License:Apache License 2.0
Release Count1078
Last Release Namev13.1.4 (Posted on 2023-04-20 10:52:30)
First Release Namev2.0.1 (Posted on 2018-12-06 16:05:18)
Created At2018-11-26 22:39:03
Pushed At2024-04-11 05:49:52
Last Commit At2023-05-12 00:49:44
Stargazers Count2.7k
Watchers Count38
Fork Count182
Commits Count4.9k
Has Issues Enabled
Issues Count4059
Issue Open Count5
Pull Requests Count5017
Pull Requests Open Count6
Pull Requests Close Count287
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top