Revision history for Kubernetes-Comb-SVG
0.001 2026-10-03 04:30:44Z
- First release. Renders a set of Kubernetes::Comb custom resources as one
self-contained SVG honeycomb: one hexagon per Comb, coloured by phase. No
script, no external reference, the same input always gives the same bytes.
- Kubernetes::Comb::SVG->render draws the picture. Input is a list of Comb
custom resources (hashes or TO_JSON objects, an array or a List); nothing
is fetched from a cluster.
- Two layouts. layout => 'depth' (default): groups by a label, rows by
dependency depth, dependency edges from spec.dependsOn. layout => 'packed':
a status monitor, all Combs sorted by namespace/name in one compact
honeycomb that fits a screen; the grid comes from columns, else rows, else
aspect (default 16/9).
- A cell shows the name (broken into two lines after a hyphen, dot or
underscore before it is cut), the phase and, when the Comb is not Running,
the reason of its Ready condition. The tooltip carries the rest.
- Phases with a colour of their own: Running, Pending, Blocked, NeedsConfig,
Disabled, Error, Stopped, NotDeployed; anything else is Unknown.
- A Comb that borrows its service from an upstream (status.upstream recorded,
not unreachable, phase Running or Pending) is drawn with a dashed outline and the
upstream context.
- theme sets the phase colours and the surfaces of the picture; a value is
one colour or { light => ..., dark => ... }. The colours are CSS custom
properties (--comb-*) and, with the classes, the documented styling
interface. Light and dark colour schemes are built in.
- blink and blink_seconds make the cells of the named phases pulse through a
CSS animation; with prefers-reduced-motion they get a thicker outline
instead.
- Further options: title, group_label, size, edges, legend and a link
callback that makes cells clickable.
- bin/comb-svg renders Comb custom resources from a JSON file or standard
input to an SVG on standard output, with the same options as flags.
- Kubernetes::Comb::SVG::Cell (a Comb read into a cell) and
Kubernetes::Comb::SVG::Layout (cells placed on the honeycomb) are public
and documented, for callers who want the data without the drawing.
- examples/demo.svg and examples/monitor.svg show both layouts, rendered by
examples/demo.pl from examples/demo.json; the README and the documentation
show them as PNG.
Keyboard Shortcuts
Global
s
Focus search bar
?
Bring up this help dialog
GitHub
gp
Go to pull requests
gi
Go to GitHub issues (only if GitHub is preferred repository)