Hot fix on V2.0.2
Hot fix on V2.0.2
🚀 New
🔁 repeat_on: repeat an entity config over an array
You can now fan out a single entity configuration into multiple “virtual items” based on an array returned by a template.
- Add
repeat_onto an entity entry. - The
repeat_ontemplate should return an array (e.g., an attribute that contains a list of objects). - The card will render one ticker item per array element.
This unlocks use cases like:
- Weather alert lists (attribute arrays)
- To-do lists
- Forecast arrays
🧩 Template variables (available when repeat_on is used)
When an entity uses repeat_on, the following variables are injected into templates:
- 🧱
item— the current array element (often an object) - 🔢
index— the 0-based index of the item - 🏷️
entity— the entity id of the source entity (e.g.,sensor.nws_alerts) - 📦
stateObj— the full state object for that entity
These variables can be used in:
visible_ifvalue_templatenameunit- Color fields (
*_color,badge_*), andicon
🧪 Example
If your sensor returns below attributes
Alerts:
- Event: Cold Weather Advisory
ID: 66aebbdf-c1cf-7004-04ac-7946e90c7c17
URL: >-
https://api.weather.gov/alerts/urn:oid:2.49.0.1.840.0.c9655a94fdf1f8075e3ee0334a04035d67c91766.001.1
Headline: COLD WEATHER ADVISORY REMAINS IN EFFECT UNTIL NOON CST MONDAY
Type: Update
Status: Actual
Severity: Moderate
Certainty: Likely
Sent: "2026-01-18T13:41:00-06:00"
Onset: "2026-01-18T13:41:00-06:00"
Expires: "2026-01-18T21:45:00-06:00"
Ends: "2026-01-19T12:00:00-06:00"
AreasAffected: >-
West Polk; Norman; Clay; Kittson; Roseau; Lake Of The Woods; West
Marshall; East Marshall; North Beltrami; Pennington; Red Lake; East Polk;
North Clearwater; South Beltrami; Mahnomen; South Clearwater; Hubbard;
West Becker; East Becker; Wilkin; West Otter Tail; East Otter Tail;
Wadena; Grant; Towner; Cavalier; Pembina; Benson; Ramsey; Eastern Walsh
County; Eddy; Nelson; Grand Forks; Griggs; Steele; Traill; Barnes; Cass;
Ransom; Sargent; Richland; Western Walsh County
Description: |-
* WHAT...Very cold wind chills as low as 40 below expected.
* WHERE...Portions of central, north central, northwest, and west
central Minnesota and northeast and southeast North Dakota.
* WHEN...Until noon CST Monday.
* IMPACTS...The dangerously cold wind chills as low as 40 below zero
could cause frostbite on exposed skin in as little as 10 minutes.
Instruction: |-
Use caution while traveling outside. Wear appropriate clothing, a
hat, and gloves.
- Event: Blizzard Warning
ID: 2274a010-f718-6266-76a7-5af3756f64ab
URL: >-
https://api.weather.gov/alerts/urn:oid:2.49.0.1.840.0.713fd1c091afc8d7b3dfdd2926996c99e484b2d7.002.1
Headline: BLIZZARD WARNING REMAINS IN EFFECT UNTIL 9 PM CST THIS EVENING
Type: Update
Status: Actual
Severity: Extreme
Certainty: Likely
Sent: "2026-01-18T13:40:00-06:00"
Onset: "2026-01-18T13:40:00-06:00"
Expires: "2026-01-18T21:00:00-06:00"
Ends: "2026-01-18T21:00:00-06:00"
AreasAffected: >-
Norman; Clay; Roseau; East Marshall; Pennington; Red Lake; East Polk;
Mahnomen; West Becker; Wilkin; West Otter Tail; Grant; Barnes; Cass;
Ransom; Sargent; Richland
Description: |-
* WHAT...Blizzard conditions. Additional snow accumulations up to
one inch. Winds gusting as high as 55 mph.
* WHERE...Portions of northwest and west central Minnesota and
southeast North Dakota.
* WHEN...Until 9 PM CST this evening.
* IMPACTS...Whiteout conditions are expected and will make travel
treacherous and potentially life-threatening.
Instruction: |-
Persons should consider delaying all travel. Motorists should use
extreme caution if travel is absolutely necessary.
configuration_type: GPS Location
gps_location: 46.7258996,-97.1193751
attribution: Data provided by Weather.gov
icon: mdi:alert
friendly_name: NWS Alerts Alertstype: custom:strip-card
entities:
- entity: sensor.nws_alerts
repeat_on: "{{ state_attr(entity, 'Alerts') }}"
value_template: "{{ item.Description }}"
name: "{{ item.Headline }}"
visible_if: "{{ item.Status == 'Actual' }}"
duration: "0"
separator: "|"
font_size: 20px
scroll_speed: "100"
grid_options:
columns: full
rows: auto✅ Example: Weather Attributes Strip
type: custom:strip-card
entities:
- entity: weather.home
name: Temp
attribute: temperature
unit: "{{ state_attr(entity, 'temperature_unit') }}"
- entity: weather.home
name: Feels
attribute: apparent_temperature
unit: "{{ state_attr(entity, 'temperature_unit') }}"
- entity: weather.home
name: Dew
attribute: dew_point
unit: "{{ state_attr(entity, 'temperature_unit') }}"
- entity: weather.home
name: Humidity
attribute: humidity
unit: "%"
- entity: weather.home
name: Clouds
attribute: cloud_coverage
unit: "%"
- entity: weather.home
name: UV
attribute: uv_index
- entity: weather.home
name: Pressure
attribute: pressure
unit: "{{ state_attr(entity, 'pressure_unit') }}"
- entity: weather.home
name: Wind
value_template: >-
{{ state_attr(entity, 'wind_speed') }} {{ state_attr(entity,
'wind_speed_unit') }}
- entity: weather.home
name: Gust
value_template: >-
{{ state_attr(entity, 'wind_gust_speed') }} {{ state_attr(entity,
'wind_speed_unit') }}
- entity: weather.home
name: Visibility
attribute: visibility
unit: "{{ state_attr(entity, 'visibility_unit') }}"📨 Message if template is empty
- you can use
empty_messagein case your template may returns null for a while.
👁️ Visibility semantics
- ✅
visible_ifis evaluated per item (usingitem,index, etc.). - 🚫 If
repeat_onreturnsundefined,null,false, an empty string, or an empty array, the entity produces no items (it will not be visible).
🛠️ Editor
-
🧰 Added a new UI field in the entity editor:
- “Repeat on (template returns array)”
✅ Backwards compatibility
- Existing configurations without
repeat_oncontinue to behave as before. repeat_onis optional; when omitted, the entity renders as a single item.

