Widget Support

26 LVGL widgets.
22 ready to use.

Drag-and-drop support status for every ESPHome LVGL widget.

Implementation Progress 85%
22 Implemented
4 Planned

Arc

Arc gauge / dial

Bar

Progress bar indicator

Button

Clickable button with text

Button Matrix

Grid of buttons

Checkbox

Boolean checkbox input

Dropdown

Dropdown list selector

Keyboard

Text input keyboard

Label

Text display element

LED

LED indicator light

Line

Drawing line element

Meter

Gauge: scales, ticks, arcs, needles, gradient ticks (single-scale)

Object

Base LVGL object (container / rectangle)

QR Code

QR code display

Roller

Scrollable list selection

Slider

Value selection slider

Spinbox

Numeric value input

Spinner

Loading spinner animation

Switch

Toggle on / off control

Tabview

Tab-based navigation

Textarea

Multi-line text input

Tileview

Tile-based layout navigation

Image

Image display with URL source and curated library

Container

Planned

Widget container / group

Animimg

Planned

Animated image (frame sequence)

Canvas

Planned

Drawing canvas

Msgbox

Planned

Message box dialog

Platform Features

Cross-cutting LVGL features beyond individual widgets - vs the real ESPHome source.

0 Full 8 Partial 3 Missing

Top-level config (lvgl:)

Partial

The lvgl: block - displays, pages, byte order, theme…

Styles & themes

Partial

Reusable named styles, theme, and inline style properties

Layouts (Flex & Grid)

Partial

Flex and Grid layouts for child widgets

Sizing (% / SIZE_CONTENT)

Partial

Dimension value forms - px, percentage, content-sized

States & parts

Partial

Widget states (pressed/checked/…) and parts (indicator/knob/…)

Colors & gradients

Partial

Colors and background gradients

Fonts

Partial

Built-in, icon, and custom fonts

Triggers (widget events)

Missing

Event triggers on widgets (on_click, on_value, …)

Actions (lvgl.* automations)

Missing

Runtime actions (lvgl.widget.update, page.show, …)

Input devices (encoder / keypad / touch)

Partial

Touch, rotary-encoder, and keypad input binding

Entity bindings (platform: lvgl)

Missing

Expose/drive widgets as ESPHome/HA entities

Implemented widgets are fully supported - drag them from the toolbox and edit all properties in the sidebar.
Planned widgets exist in LVGL but aren't in the designer yet. You can still use them by adding YAML manually after export.

Missing a widget?

Request a widget or report an issue - we prioritize based on community feedback.

espboards.dev ESPboards.dev ·Made for the ESPHome community

ESPHome LVGL Designer · also known as ESPHome Designer, ESPHome LVGL UI Designer, ESPHome LVGL Editor, LVGL Designer for ESPHome, ESPHome LVGL online editor, and ESPHome LVGL GUI builder. A free online ESP32 LVGL UI editor for the ESPHome community.