v0.2.0 — Heatmap thermal overlay
What's new
Thermal heatmap overlay
A small thermometer icon in the card header cycles through four modes:
| Mode | Icon | What it shows |
|---|---|---|
| Off | grey thermometer | Normal behaviour — no overlay |
| Temperature | orange thermometer | Blurred colour-by-temperature across a blue→red ramp |
| Humidity | blue water-percent | Scattered droplets, density proportional to humidity |
| Combined | purple blur | Both layers together |
The overlay is session-only — clicking the toggle never touches your dashboard YAML.
How the thermal layer works
- One blurred SVG
<rect>per room, filled with a colour interpolated across five stops (blue → teal → yellow → orange → red) feGaussianBlurat stdDeviation 42 softly blends adjacent room colours at boundaries — drone-thermal aesthetic- Rooms without a temperature sensor show as neutral grey
How the humidity layer works
- Droplets are placed using a seeded PRNG (mulberry32) keyed to the room ID, so positions are stable across every re-render
- Density scales with humidity above the configurable floor value
- No droplets shown below
humidity_floor% (default: 50)
New config schema
heatmap_mode: off # or: temperature | humidity | combined
humidity_floor: 50 # hide droplets below this humidity %
temperature_range: [16, 26] # card-level default range
floors:
- temperature_range: [14, 28] # per-floor override
rooms:
- id: garden
heatmap: false # opt-out outdoor/sensorless roomsExisting behaviour preserved
- Light spill glow (
box-shadow) is unaffected — shadows render outside the box regardless of background - Room tap and long-press handlers still fire (SVG has
pointer-events: none) - Info cards, temperature/humidity readouts, occupancy dots and MDI icons remain visible