Early Preview of a Drag-and-Drop LVGL GUI Builder – Looking for Feedback

Hey everyone -

I’ve been hacking together a simple drag-and-drop LVGL GUI builder and wanted to share an early preview. Right now, it’s very basic—it supports only labels, buttons, a keyboard, and a few shapes. Most of the other UI elements are just placeholders while I flesh things out.

Backstory

I tried using SquareStudio but wasn’t a big fan (and didn’t want to pay for it). I needed a quick way to visualize screen components and generate LVGL code for my own projects—so I started building this tool yesterday. The idea is to add all LVGL widgets and let you easily connect them, then export the code for either individual components or the whole project.

Features so far:

Still working on fleshing it out and adding all of the widgets, more advanced code features / linking between components, multi-canvas, and improved code export.

Although I know it’s not super useful in its current form, I’d love to see if anyone else in the community would find this helpful or has ideas/requests. You can also tell me it’s a silly waste of time :joy:

I was planning on maybe open sourcing it when I was done to help other people who’ve been dealing with the same / similar pain points.

I’m posting it after working on it for a day just to gather feedback on what features or improvements you’d like to see. Any thoughts or suggestions would be really appreciated!

Here is the link if you want to check it out while I’m working on it:
lvgl.wl.ws

2 Likes

I did try it for a bit and I think there is still “market” for tool like this!

Few points from what I tried:

  • Button - would be good to set border radius with number value. Slider is not accurate enough sometimes.
  • Rectangle should work as Panel in SLS?
  • I did not figure out how to remove widgets from the workplace.
  • Widgets are in multiple categories, which is a bit confusing.

What plans do you have with this tool?

  • Will there be suppport for hierarchy/ multiple “screens”?
  • Will there be support for alignment of widgets to each other?
  • Will there be support for saving of the project?
  • Do you plan to make custom sizes for canvas?

I have to admit that this is really nice progress in one day! Please keep going forward with this tool! :wink:

It might be easier to deal with if it’s not written to generate any C code but instead generate the XML that is able to be parsed by the built in parser in LVGL.

There is 100% going to be a lot of interest in a WYSIWYG GUI editor for LVGL. The trick is going to be having the UI run so the user is able to test it out. That is going to be a tough nut to crack using a web application.