bunhub.dev

A homelab console for one house. Built like a toy, wired like a utility.

no build step

Panel 1 · The workbench
The real b/zigbee sub: a rail of subbuns, a title bar, that sub's house rules, and a row of device cards reading temperature, battery and last-seen.

the shelf

Every gadget in the house, on one shelf.

I read everything. I write only what you told me to.

  • one Go binary
  • one static UI
  • one stylesheet
A scruffy llama in reading glasses and a hairnet, holding a clipboard and a pen — the one who reads everything and writes only what she was told.
internal
Panel 2 · The radio side
The device cards from b/zigbee: two button sensors and two climate sensors, each with battery, temperature, last-seen and radio quality.

b/zigbee

Switches, sensors, the odd stubborn bulb.

What joined, what went quiet, and one join window that opens for 254 seconds.

  • devices
  • raw topics
  • the join lever
A matcha bun with an antenna, the b/zigbee mascot. A scruffy llama in a hard hat and hi-vis vest, holding a stop sign up at the join window.

opens on the LAN b/zigbee

Panel 2a · The gauges
b/ops: the side nav, then the daily tip card — a dated headline about the library census, a short paragraph, and a re-capture button. A scruffy llama in a diving mask and flippers, down in the logs with a pressure gauge.

b/ops

Gauges, logs, and a daily tip.

Prometheus numbers and Loki lines, with thresholds you can read at a glance.

opens on the LAN · b/ops

Panel 2b · The phone book
A whole tray of buns, the b/services mascot. A scruffy llama in a blue mail uniform, letters flying out of the bag — every address on this LAN.

b/services

Who answers on this LAN.

Every host and port this house runs, TLS marked. The index is generated, so it is wrong only when it is actually wrong.

opens on the LAN · b/services

Four wires, one shelf.

Every panel is a thin read-only proxy: the house's systems keep their own truth, bunhub just translates it into something with a border and a caption.

  • MQTTThe broker's day job: topics in, normalized state out.
  • Home AssistantThe house's own opinion of itself, borrowed read-only.
  • Jellyfin + arrWhat's on tonight, and which episodes still wait for subtitles.
  • Prometheus · LokiThe hub's own pulse, kept for the days something looks funny.
The API console in b/console: a GET request row with a send button, then the CORE and ZIGBEE endpoint cards the catalog generates. A scruffy llama in headphones with both hands on a mixing desk — four wires, four channels. A scruffy llama in a chef's toque, stirring a pot of red sauce — reading tonight's menu off the same catalog.

the console reads the catalog b/console

That's the whole tour.

The hub stays home: on the LAN, behind TLS from our own little certificate authority. Panels read; writes need a token.

No analytics on this page, no third-party fonts, no scripts. Just text, one stylesheet, and some buns with opinions.

The scruffy house llama, waving goodbye. A bun peeking out, apologizing for something. A llama in a banana costume with her arms folded, unimpressed. She has been in the background of every panel and has opinions about that. A scruffy llama in plate armour with a wooden spoon, standing guard at the door.