v2.0.0 is out - auto images, real-time updates, HA 2026.x fixes
Hey all, just shipped a big update to the shopping list card. Been iterating on it with my own dashboard for a while and finally pulled everything together into a 2.0 release.
Quick rundown of what’s new since 1.4:
Auto-derived images. You can now set image_base: /local/images/shopping-list/ and the card figures out the filename from the item title. Drop a bunch of apple.png, ice-cream.png, ice_cream.png, whatever naming style you prefer, and it’ll find them. It tries a few slug variants (dash, underscore, space, joined) so you don’t have to be precise about naming.
List prefix for category sorting. If you want your to-do list to stay grouped by category, you can set list_prefix: Dairy and the card will store items as "Dairy - Milk" on the list while still displaying just Milk on the card itself. This was inspired by the approach in this thread.
Real-time updates. The card now subscribes to to-do changes over WebSocket instead of polling hass state. A single subscription per entity is shared across every card on the dashboard, so a big grid of cards pointing at the same list doesn’t spawn a socket per card.
HA 2026.x compatibility. The recent ha-select rewrite broke the layout and hold-action dropdowns in the editor. Fixed.
Editor polish. Rebuilt with collapsible sections (Content / Layout & Display / Icons & Colors / Behavior), native image upload via ha-picture-upload, color swatches, proper icon picker.
Other stuff: hold_action (remove, more-info, or nothing), haptic feedback, quantity_step and quantity_max, show_name: false for icon-only cards, theme-aware colors with safe fallbacks. No breaking changes, your existing YAML keeps working.
Example: auto-generated categorized grid
Since a few folks asked how I drive a whole shopping dashboard off a single file, I added an example folder: ha-shopping-list-card/examples/auto-generated-grid at main · eyalgal/ha-shopping-list-card · GitHub
The short version: a JSON file in /config/ defines categories and items, a command_line sensor exposes each category as an attribute, and an auto-entities + layout-card template renders one grid per non-empty category. Edit the JSON, reload the sensor, dashboard rebuilds itself. Needs layout-card and auto-entities from HACS alongside this card.
Links
Feedback, bug reports, and feature requests welcome. Especially curious if the multi-slug image fallback covers everyone’s naming conventions or if I need to add more variants.