Feature Phone UI in LVGL, Zig and WebAssembly

We have created an LVGL App that runs in a Web Browser and on Pine64 PinePhone…

  1. We compiled LVGL Library from C to WebAssembly with Zig Compiler

  2. We wrote our LVGL App in the Zig Programming Language (instead of C)

  3. Exact same code runs in a Web Browser and on PinePhone (with Apache NuttX RTOS)

  4. Which is super helpful for prototyping LVGL Apps

Check out the details in this article:

“NuttX RTOS for PinePhone: Feature Phone UI in LVGL, Zig and WebAssembly”

(Try it in your Web Browser)

(Watch the Demo on YouTube)

How it looks on PinePhone:

And how we tested in a Web Browser with WebAssembly:

1 Like

Amazing! I’ll share it our newsletter :slight_smile:

1 Like

Thank you so much! I hope someday we can build and test an entire LVGL App in our Web Browser :slight_smile:

Now we have Emscripten to build HTML form C, but its only for demos. I wonder what improvement ideas you have in mind? :slight_smile:

2 Likes

Maybe we can drag-and-drop to create an LVGL App in the Web Browser? And we test the LVGL App in the Web Browser with WebAssembly?

We might have a way to drag-and-drop a Zig Program in the Web Browser: GitHub - lupyuen3/blockly-zig-nuttx: Visual Programming for Zig with NuttX Sensors

We will do exactly this with SquareLine v2 :slight_smile: (it’s still under development)

1 Like

CONGRATZ!! NuttX RTOS and LVGL ROX! :slight_smile:

1 Like

Thank you so much! :slight_smile:

so are we not able to build html for our own LVGL projects? only demos?

Sorry I’m no longer maintaining this project. Maybe we should explore SquareLine v2? (As mentioned above)