Kui is a framework for extending CLIs with graphical enhancements. If you wish to extend the framework, either by adding custom commands, custom views, or custom theming, this is the place to start!
This repository offers a few silly animal-oriented commands and views, including a way to decorate Kubernetes resources with additional tabs.
npm ci
npm run watch
This will spawn the Webpack watcher. Once it has finished loading, you
may open a Kui window via npm run open
. If this works, you are all
set for developing your Kui-based magic.
This wiki introduces the ways in which this application enhances Kui. In particular, this client extends Kui with:
-
Decorations for Kubernetes resources: a
Cat
tab, a ๐ถ button, and a ๐ฑ badge (shown in the upper right with a green background). -
A set of commands that use Kui's built-in views. More info
hello cat
andhello dog
are simple hello worlds that returns a cat and dog emoji, respectivelyhello sidenav
andhello catnav
which show how to use the multi-tab "sidecar" views, with tabs on top and tabs on the left, respectively
- A StatusStripe widget that will be placed along the bottom of the Kui window. More info
-
Kui Command Documentation and Terminal View Documentation uses the string, boolean, and table view as examples of Terminal-oriented command response.
-
TopNavSidecar View Documentation uses this as an example of TopNavSidecar-oriented command response.
-
LeftNavSidecar View Documentation uses this as an example of LeftNavSidecar-oriented command response.
If you want to build and distribute your own double-clickable
Electron-based clients, then use one of these commands, after which
your clients will be placed in ./dist/electron
.
npm run build:electron:all # does all of the following...
npm run build:electron:mac:amd64
npm run build:electron:mac:arm64
npm run build:electron:linux:amd64
npm run build:electron:linux:arm64
npm run build:electron:windows:amd64
To build a hosted version of Kui, running in a Docker container, use this command:
npx kui-build-docker-with-proxy
This will generate a Docker image kui-shell/kui
. To test this
production web app, you can use the script npx kui-run-cproxy
, and
then visit http://localhost:9080
.