Skip to content

Component reference

Common fields

Every widget requires a dashboard-unique id and a type. Stateful widgets use entity or entity_id. Commonly available fields are title, icon, theme/theme_override, condition/visibility/show_if, row, col, rowspan/row_span, colspan/col_span, cell_width/column_width, cell_height/row_height, cell_aspect_ratio, min_height, gap, margin.

Types and aliases

Family Canonical types and aliases
Control button, switch, light, cover, fan, climate, thermostat, select, entity_select, textfield
Information label, clock, datetime, calendar, history_graph, sensor_graph, graph, mini_graph_card, horizon_card, weather_chart
Media media_player, media, picture, image, camera, video, immich_slideshow, immich_clock
Layout grid, blank, tabbed_card, auto_entities, flex_table
Voice assist_button, voice_assistant_button, push_to_talk

Kebab and Lovelace aliases such as custom:mini-graph-card, custom:horizon-card, custom:weather-chart-card, custom:auto-entities, custom:flex-table-card, custom:tabbed-card, photo_frame and photo_clock remain supported.

Actions and security

A widget cannot send arbitrary HA service calls. The integration allows only typed operations for the configured entity domain: button.press; light/switch on, off and toggle; cover position; fan, climate and select functions; media control. Unknown types remain intact in the visual editor but appear as a notice in the app until a native renderer exists.