Very simple CLI visualization of Kubernetes resources.
- Design Inspiration (and k9s and bubbletea examples)
- Kubernetes API
- Example code
- Kind kubeconfig help
sudo kubectl config view --flatten >> ~/.kube/config
Very simple CLI visualization of Kubernetes resources.
Very simple CLI visualization of Kubernetes resources.
sudo kubectl config view --flatten >> ~/.kube/config
Holding down a direction key in a textarea causes the cursor to keep moving for a while even after letting go, this can then sometimes lead to a crash for unknown reasons.
Need to add a debounce function to fix this, maybe something like this.
Try to find a Java CLI library that can display simple graphs, e.g. for CPU usage.
Make the YAML code in inspectJson
look nicer.
I have re-implemented this bubble to try doing this, however the special characters get escaped by the TextArea :(
Make the CLI interactive e.g. add a cursor, choice menus, radio menus, etc.
Investigate how easy / is it even possible to do well in Java/Kotlin.
Look at k9s for inspiration.
kubectl get pods -o yaml
displays three main fields: metadata
, spec
and status
. Add a view that split this yaml, puts spec
on one side of the terminal and 'status' on the other side.
Tab
.Maybe use the -w
flag to watch for changes:
Note: The kubectl get command is usually used for retrieving one or more resources of the same resource type. It features a rich set of flags that allows you to customize the output format using the -o or --output flag, for example. You can specify the -w or --watch flag to start watching updates to a particular object. - kubectl docs
Note: In Go unit tests are usually written next to the module/file.
Setting the textarea value to a really long string will cause some of it to be cut off, even if the char limit is set to 0 (no limit).
Have to clear the managedFields
part of the pod status
section because of this.
See if it is possible to do CLI diagrams e.g. lines going from a service to the pods.
There is no (public) function in the textarea package to move the cursor to the top: https://pkg.go.dev/github.com/charmbracelet/[email protected]/textarea.
There are only function that change the column of the cursor or move it up/down by one row. There is a moveToBegin
function which is perfectly suited for this, but it is not made public and is only available through a shortcut (Ctrl+Home
)
Currently the tables stay the same size at all times, make them resize dynamically to fill the terminal.
Figure out what to do if the table then becomes too big, maybe clamp the size and set some kind of upper limit?
Maybe handle really small terminal sizes too.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.