Documentation · Alpha
PTKublet Docs
Native Tauri desktop app for day-to-day Kubernetes operations: live watches, YAML, logs, exec, and backups.
Overview
PTKublet is a Tauri 2 desktop app with a Rust sidecar and React UI. Dashboards, YAML editing, logs, exec, port-forward, and WebSocket watches live in one native workspace (macOS).
Authentication is kubeconfig + cluster context — no separate login screen.
Screenshots
Canonical capture names in the PTKublet repo are PNG files in
docs/screenshots/: dashboard.png, resource-map.png, deployments.png,
desktop-settings.png, dmg-installer.png.
Site docs use a curated gallery export in public/images/projects/kube-app/.
| Shot | File | Shows |
|---|---|---|
| Hero | dashboard.png |
Cluster health / node cards |
| Resource Map | resource-map.png |
Kubernetes resource topology map |
| Deployments | deployments.png |
Deployments + YAML editor |
| Pods | pods.png |
Pods list and actions |
| Nodes | nodes.png |
Nodes with resource bars |
| KOS Nodes | nodes-pertisk-kos.jpg |
Nodes running Pertisk KOS OS |
| Cluster | cluster.png |
Cluster-wide kubelet metrics |
Quick start
git clone https://github.com/pertisktech/pertisk-kube-app.git
cd pertisk-kube-app
# Prerequisites: Rust 1.70+, Node 18+, a Kubernetes cluster
make run-desktop
# or: make run
On startup, pick a kubeconfig and context (persisted; switch later from the top bar).
macOS DMG
make build-desktop # .app bundle
make build-macos-dmg # PTKublet_*.dmg (embeds backend sidecar)
If you see Backend configuration error, set the backend binary path under Config → Desktop Settings (or PERTISK_BACKEND_BIN).
Core workflows
- Watch — single WebSocket (
/ws) for live add/update/delete on workloads, nodes, config, network, storage, RBAC, CRDs - Inspect — pod logs (REST), exec terminal (
/api/exec), port-forward from the UI - Edit — YAML get/put with validation; scale and rollout restart for Deployments
- Nodes — cordon, uncordon, drain; capacity and metrics
- Backup — S3-compatible destination, schedules, inventory, restore
Permissions
PTKublet uses your kubeconfig credentials and cluster RBAC. Denied API calls surface as UI errors — the app does not escalate privileges.
Full documentation
Feature matrix, WebSocket coverage, and sidecar search order: