Skip to content

Releases: naked-head/puffer-card

Puffer Card v1.3.0

Choose a tag to compare

@github-actions github-actions released this 11 Jul 07:32

Added

  • Fourth optional sensor position (extra), sitting between middle and
    bottom. Fully backward compatible: existing configs with only
    top/middle/bottom render pixel-identical to before — the extra
    slot is simply left unconfigured. With all four positions set, the tank
    (normal layout) grows taller and badge text shrinks slightly so nothing
    overlaps; both layouts get slightly smaller fonts in this case.
  • Side pipes in the normal layout now follow the number of configured
    sensors (1 to 4), each centered on its sensor's height, instead of a
    fixed pair of decorative pipes.
  • A 4th fixed chart color (teal) so a 4-sensor history chart never repeats
    a color between series.
  • dist/translations/index.json, a manifest listing the languages shipped
    with the card, plus scripts/check-translations.js to validate that
    every language file has the same keys as the English reference —
    wired into the Validate HACS CI workflow. Documented in the README
    under "Languages" as the path for contributing a new translation
    (no code changes required).

Puffer Card v1.2.3

Choose a tag to compare

@github-actions github-actions released this 01 Jul 14:11

Fixed

  • White flash on the chart every ~60 seconds during periodic data refresh.
    _histLoading was a Lit reactive property, so setting it to true at the
    start of every fetch triggered a full re-render that momentarily replaced
    the chart with the loading placeholder — visible as a white flash.
    Fix: _histLoading is no longer a reactive property; re-renders are
    triggered manually via requestUpdate() only when data actually arrives.
    The loading placeholder is shown only during the very first fetch (when
    no history data exists yet); subsequent silent refreshes keep the existing
    chart visible until new data is ready.

Puffer Card v1.2.2

Choose a tag to compare

@github-actions github-actions released this 01 Jul 13:34

Fixed

  • Blank chart area and page reload required to recover. Three root causes:
    1. The refresh logic ran inside updated(), which Lit calls after every
      reactive property change. Setting _histLoading = true triggered a
      re-render, which triggered updated() again while hass kept updating
      in the background, causing cascading fetch calls.
    2. There was no concurrency guard: two _fetchHistory() calls running in
      parallel would write to _history and _histLoading out of order,
      producing inconsistent state visible as repeated flickering followed by
      a blank chart.
    3. Any network/API error inside _fetchHistory() left _histLoading
      permanently set to true, showing only the loading placeholder.
      The fetch cycle is now driven by setInterval started in
      connectedCallback and cleared in disconnectedCallback. A _fetching
      flag prevents concurrent calls, and a try/finally block ensures
      _histLoading is always reset even on error.

Puffer Card v1.2.1

Choose a tag to compare

@github-actions github-actions released this 30 Jun 08:19

Fixed

  • The icon_mode field was missing from the visual editor when editing an
    existing card without an icon already set, making the option undiscoverable.
    It is now always shown.
  • The chart sensor selector bug from 1.2.0 was only fixed in the card itself,
    not in the visual editor (which keeps its own separate copy of the
    configuration): on first enabling the chart, the editor's checkboxes still
    appeared empty even though the chart correctly showed all sensors. The
    editor now applies the same defaulting logic as the card.

Changed

  • History chart data is now downsampled (averaged into fixed time bins,
    roughly one point per 4 px of chart width) before the smoothing curve is
    drawn. Raw History API data can be noisy with many closely-spaced state
    changes; without downsampling the smoothed curve still looked jagged. The
    chart is now visually calmer and closer to other popular history-graph
    cards, regardless of how many raw data points the sensor produced.

Puffer Card v1.2.0

Choose a tag to compare

@github-actions github-actions released this 30 Jun 07:50

Added

  • Optional icon next to the card title, or replacing it entirely
    (icon_mode: beside / replace), selectable via the visual editor's icon
    picker. The stub configuration now suggests a default tank icon.

Changed

  • History chart curves are now smoothed using Catmull-Rom interpolation
    (converted to cubic Béziers), matching the look of popular history-graph
    cards instead of straight-segment lines.

Fixed

  • The chart sensor multi-select could get out of sync with the rendered
    chart: on first enabling the chart, all configured sensors were drawn but
    none appeared selected in the editor: selecting one made the others
    disappear, and deselecting it left an empty chart area. chart_sensors is
    now always explicitly populated with all configured sensors as soon as the
    chart is enabled, so editor and rendering stay consistent from the start.

Puffer Card v1.1.2

Choose a tag to compare

@github-actions github-actions released this 30 Jun 07:09

Full Changelog: v1.1.1...v1.1.2

Puffer Card v1.1.1

Choose a tag to compare

@github-actions github-actions released this 29 Jun 19:37

Full Changelog: v1.1.0...v1.1.1

Puffer Card v1.1.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 18:58

Full Changelog: v1.0.0...v1.1.0

v1.0.0

Choose a tag to compare

@naked-head naked-head released this 18 Jun 12:14

First public release of Puffer Card — a Lovelace card that visually
represents a buffer tank / hot-water cylinder.

Added

  • 1 to 3 temperatures shown at different heights, distributed evenly when
    fewer than three are configured.
  • Color-coded thermal stratification driven by configurable min/max range.
  • normal and compact layouts, selectable in the editor.
  • show_labels option to display values only.
  • Customizable labels with localized defaults (English / Italian).
  • Click-to-more-info on every value; built-in graphical editor; theme-aware.

Installation

Add this repository to HACS as a custom repository (category: Dashboard),
then install and reload. See the README for details.