I wrote a device driver that uses a websocket to render lvgl on one or more web browsers as well as get mouse/touch input. It’s still a work in progress but can be found on my github: danjulio/lv_port_esp32_web. This is the esp32 demo project with the SPI drivers stripped out and the new driver in place. Released like the original project for your use but with no warranties, etc, etc.
The idea is to be able to use your same code to display on a local LCD or remote web session. Clearly some security issues, etc. apply.
Performance varies a lot with how much lvgl has to redraw and the pixel depth but it seems quite useable with 16-bit pixels and plain backgrounds (it supports 8/16/32-bit pixels).
The driver is a little on the heavy side. Depending on the lvgl_conf.h settings I got a binary in excess of 1MB. You may have to increase the primary application partition size as I’ve done (see the local partitions.csv file and menuconfig setup to use it).