diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..3bf1800 Binary files /dev/null and b/.DS_Store differ diff --git a/README.md b/README.md index 162121f..67416e0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # buoy -`buoy` is a declarative TUI dashboard for Kubernetes. You define your dashboard in a JSON file and it will fetch the information from your Kubernetes cluster and build a dashboard for viewing the requested content right in your terminal window. +`buoy` is a declarative TUI dashboard for Kubernetes. You define your dashboard in a JSON or YAML file and it will fetch the information from your Kubernetes cluster and build a dashboard for viewing the requested content right in your terminal window. > [!NOTE] > This project is in the extremely early stages of development and is a hobby project. Use at your own risk. @@ -55,12 +55,11 @@ The `test.json` file contains samples for each of the different panel types that You can also specify a remote reference to a dashboard configuration file. It must be a valid URL and the response must be the raw YAML or JSON contents of the file. -## Controls -- `ctrl+c`, `q`, `esc` will quit the program and exit the tui +## General Controls +- `ctrl+c`, `q` will quit the program and exit the tui - `tab` will switch the active tab to the one to the right of the currently active tab - `shift+tab` will switch the active tab to the one to the left of the currently active tab -- up and down arrow keys and mouse scroll will move up and down in the active tab -- For tables you can use the left and right arrows to scroll horizontally +- `ctrl+h` will open a more detailed help menu ## Contributing diff --git a/docs/.DS_Store b/docs/.DS_Store new file mode 100644 index 0000000..d7dc438 Binary files /dev/null and b/docs/.DS_Store differ diff --git a/docs/README.md b/docs/README.md index dcd6e3d..741e791 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ # buoy -`buoy` is a declarative TUI dashboard for Kubernetes. You define your dashboard in a JSON file and it will fetch the information from your Kubernetes cluster and build a dashboard for viewing the requested content right in your terminal window. +`buoy` is a declarative TUI dashboard for Kubernetes. You define your dashboard in a JSON or YAML file and it will fetch the information from your Kubernetes cluster and build a dashboard for viewing the requested content right in your terminal window. !> This project is in the extremely early stages of development and is a hobby project. Use at your own risk @@ -54,13 +54,11 @@ The `test.json` file contains samples for each of the different panel types that You can also specify a remote reference to a dashboard configuration file. It must be a valid URL and the response must be the raw YAML or JSON contents of the file. -## Controls -- `ctrl+c`, `q`, `esc` will quit the program and exit the tui +## General Controls +- `ctrl+c`, `q` will quit the program and exit the tui - `tab` will switch the active tab to the one to the right of the currently active tab - `shift+tab` will switch the active tab to the one to the left of the currently active tab -- up and down arrow keys and mouse scroll will move up and down in the active tab -- For tables you can use the left and right arrows to scroll horizontally - +- `ctrl+h` will open a more detailed help menu ## Contributing diff --git a/docs/_coverpage.md b/docs/_coverpage.md new file mode 100644 index 0000000..24cec27 --- /dev/null +++ b/docs/_coverpage.md @@ -0,0 +1,14 @@ + + +![logo](_media/logo.png) + +# buoy + +> A declarative Kubernetes TUI dashboard + +[GitHub](https://github.com/everettraven/buoy) +[Get Started](#buoy) + + + +![color](#ffffff) \ No newline at end of file diff --git a/docs/_media/logo.png b/docs/_media/logo.png new file mode 100644 index 0000000..4951784 Binary files /dev/null and b/docs/_media/logo.png differ diff --git a/docs/_sidebar.md b/docs/_sidebar.md index 595246d..c1191e3 100644 --- a/docs/_sidebar.md +++ b/docs/_sidebar.md @@ -3,4 +3,6 @@ - [Introduction](/) - Panels - [Table](panels/table.md) + - [Item](panels/item.md) + - [Logs](panels/logs.md) diff --git a/docs/index.html b/docs/index.html index cb5d2c4..9b5bfd5 100644 --- a/docs/index.html +++ b/docs/index.html @@ -17,6 +17,8 @@ name: 'buoy', repo: 'https://github.com/everettraven/buoy', loadSidebar: true, + coverpage: true, + subMaxLevel: 2, } diff --git a/docs/panels/item.md b/docs/panels/item.md index a04ad3e..1c2facf 100644 --- a/docs/panels/item.md +++ b/docs/panels/item.md @@ -47,4 +47,3 @@ panels: - Up and down arrow keys for navigating the viewport - Page Up and Page Down for jumping up and down in the viewport -- `v` to toggle viewing the full YAML of the selected resource \ No newline at end of file diff --git a/docs/panels/logs.md b/docs/panels/logs.md index b2dd03a..9d29dd8 100644 --- a/docs/panels/logs.md +++ b/docs/panels/logs.md @@ -1 +1,95 @@ -# Logs \ No newline at end of file +# Logs + +The `logs` panel is great for following the logs of any resource that has a `spec.selector` field that maps +to a `Pod`. It can also be directly pointed to an individual `Pod` to stream that `Pod`s logs. + +## Examples + +### Getting logs from a `Deployment` + +For this example, we are going to fetch some logs for a `Deployment` named `foo` in the `default` namespace + + + +#### **JSON** +```json +{ + "panels": [ + { + "name": "Foo Logs", + "group": "apps", + "version": "v1", + "kind": "Deployment", + "type": "logs", + "key": { + "namespace": "default", + "name": "foo" + } + } + ] +} +``` + +#### **YAML** +```yaml +panels: + - name: Foo Logs + group: apps + version: v1 + kind: Deployment + type: logs + key: + namespace: default + name: foo +``` + + + +### Logs from a `Pod` + +For this example, we are going to fetch some logs for a `Pod` named `foo` in the `default` namespace + + + +#### **JSON** +```json +{ + "panels": [ + { + "name": "Foo Logs", + "group": "", + "version": "v1", + "kind": "Pod", + "type": "logs", + "key": { + "namespace": "default", + "name": "foo" + } + } + ] +} +``` + +#### **YAML** +```yaml +panels: + - name: Foo Logs + group: "" + version: v1 + kind: Pod + type: logs + key: + namespace: default + name: foo +``` + + + +## Controls + +- Up and down arrow keys for navigating the viewport +- Page Up and Page Down for jumping up and down in the viewport +- `/` to enter a search mode. This will open a prompt for inputting a search query. When in search mode: + - `enter` / `return` executes the search query + - `ctrl+s` toggles between fuzzy and strict search. strict search will only match lines strictly containing your search term. + - `esc` will exit search mode and return to the full logs