Skip to content

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 23:16
· 47 commits to main since this release

1.0.0 (2026-08-18)

The first release of Decluttering Card Plus, a maintained continuation of
custom-cards/decluttering-card, which has
not had a release since April 2023.

It combines three generations of work — RomRider's original card, j9brown's visual
editors
, and simbaja's
modernisation — and adds to them.

Installing it over the original card

Your existing configuration keeps working. As well as its own custom:decluttering-card-plus
and custom:decluttering-template-plus types, this card registers the original
custom:decluttering-card and custom:decluttering-template types when the original is not
installed, and the decluttering_templates key is unchanged. Install this, remove the old
card, change nothing else.

Home Assistant loads resources in the order they were added, so if you keep both installed the
original usually wins and your existing cards go on using it. Remove it to get the fixes below.

New

  • Badges. A template can hold a badge:, used from a view's badges: list.
  • Templates shared between dashboards. decluttering_templates_from: lets one dashboard
    borrow another's templates, so a template library can live in one place.
  • Sharing a template with other people. The template editor has a Share tab that
    exports a template as YAML — naming the custom cards and other templates it depends on — and
    imports one somebody sent you.
  • visibility conditions inside templates, including variables inside the conditions
    themselves. A hidden card collapses instead of leaving a gap.
  • Nested variables. A variable's value can contain other variables, resolved in any order.
  • Described variables. A template can declare its variables — a label, a description, a
    Home Assistant selector, a default — and every card using it then gets a real form field
    per variable instead of a box of YAML: an entity picker for an entity, an icon picker for
    an icon.
  • Turn a card into a template. The template editor proposes the conversion for you:
    every entity, name, title, heading and icon becomes a variable defaulting to the value it
    replaced, so the template renders exactly what the card did.
  • Repeating with for_each. One card renders its template once per item in a list —
    four rooms that differ only by entity stop being four pasted copies — with columns to
    lay the copies out side by side.
  • Transforms. [[room|slug]] beside [[room]] lets one variable serve both a name and
    the entity id built from it. Four transforms: slug, upper, lower, title.
  • A Where used tab. Every view that uses the template and how many times, plus any other
    template that calls it — worth a look before changing something a dashboard leans on.
  • Variables in the shape you write them. variables: and default: accept a mapping as
    well as a list of pairs, and the editors warn about a variable with no value, or one that
    is set but never used, without ever blocking a save.

Fixed

Long-standing issues from the original tracker, all verified against a real dashboard:

  • Values containing a newline, a double quote, a backslash or a tab no longer break the card
    with JSON.parse errors — that is every multi-line value and every Jinja template written as
    a YAML block scalar (#47,
    #60).
  • An object used inside a longer string is substituted as JSON instead of being left as
    [[name]] (#83).
  • Templated cards are sized correctly in the sections layout instead of always taking the
    default size (#59,
    #80,
    #87).
  • fill_container fills the container (#72),
    and an iframe in a panel view fills the panel
    (#24).
  • A card that hides itself no longer leaves an empty space behind it
    (#58).
  • Generated cards no longer share a duplicate declutter-child id
    (#55).
  • Defaults can reference other variables
    (#62,
    #84).

Requirements

Home Assistant 2024.7 or newer. Badge templates need 2024.8, which is when badges became
configurable.

Documentation

The wiki has a page per feature,
a quick start, and a
migration guide.

With thanks to RomRider,
j9brown and
simbaja, whose work this is built on. All
MIT licensed.