lvgl
imgui
Our great sponsors
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
- Onboard AI - Learn any GitHub repo in 59 seconds
- Revelo Payroll - Free Global Payroll designed for tech teams
- SonarLint - Clean code begins in your IDE with SonarLint
lvgl | imgui | |
---|---|---|
59 | 335 | |
12,931 | 50,752 | |
1.4% | - | |
8.2 | 0.0 | |
5 days ago | about 15 hours ago | |
C | C++ | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lvgl
-
Show HN: Slint - A Declarative UI Toolkit Written in Rust for Embedded & Desktop
If you need something written in C and very tiny, I recommend LVGL https://lvgl.io/
- How to write display drivers?
-
Lilygo T-Display-S3 AMOLED
The factory code uses the Lvgl graphic library. https://github.com/lvgl/lvgl
- Is anyone still offering 1.4ghz mod services?
- Best way to use ST7789 in ESPIDF?
-
Co-ordinates when programming a screen - trial and error?
I haven’t used these personally myself, but have a look at using LVGL with Squareline. I used photoshop for designing layouts for my (simple) screens in the past and the only issues I’ve had regarding replicating my designs iirc was with text (as you mentioned) and rounded corners.
-
Has anyone used an external graphing library for an EspHome display?
At one point u/fvanroie published this work to bring lvgl into esphome. Not sure where that stands today, but it'd be a huge improvement in functionality.
- What GUI Framework to use?
-
Embedded gui interfaces
Have you considered https://lvgl.io ?
-
ImGUI Ported to a LiteX SoC
ImGUI is great, but i wouldn't call it "versatile", it's too rigid to be versatile
It's too focused on desktop (mouse/kb), and you can't really theme it other than its colors and shape of the edges
Creating custom controls is a ton of work
Then you have libraries like this: https://lvgl.io/ (gh: https://github.com/lvgl/lvgl)
That's what i call a versatile GUI library
imgui
-
Unheard Engine: Adding spot lights, HDR support, compilation-free parameter node in material graph.
There are also misc bugfixes, editor changes this time. But I'm a bit tired of win32 and plan to port Dear Imgui afterward. Or leave a comment if you have a good idea about the GUI! I'd like to be focus on the runtime rendering more and keep GUI programming as simple as possible.
-
Textual Web: TUIs for the Web
> [...] you can build UIs that are snappy and keyboard driven.
That's not an advantage that is exclusive to TUIs; after all, you're running your TUI inside a graphical application that emulates a terminal. (Unless you're rocking an actual VT102, in which case I bow down to you.)
In fact there's an entire class of applications that are extremely snappy and keyboard driven, by their very nature: games.
Some people have taken to writing GUI apps like you'd write a game, and the effects range from OK to fantastic. Check out Lagrange (https://gmi.skyjake.fi/lagrange/), AppManager (https://tildegit.org/solene/AppManager), Dear ImGUI (https://github.com/ocornut/imgui), egui (https://github.com/emilk/egui), and many others.
-
Chip8 emulator
It's not that difficult, I recently started learning to use graphics APIs myself. OpenGL is for linux, etc., directx for windows and vulkan for all platforms. I read through a bunch of forums yesterday and decided to go for vulkan (here is a link to the sdk) for my next small projects because it can run on all platforms. I would recommend to watch a basic tutorial series (like this one) for the graphics api itself to get an understanding of whats going on. And on top of that I use SDL2 for eventhandling and ImGui for the graphical user interface. Here is a link to a guide for setting up vulkan on your platform in case you would go for it.
-
Make a game engine in C++
UI ImgUI can be used in with SDL and SFML
-
Meta releases open source Intermediate Graphics Library which runs on top of Vulkan, Open GL, or Metal on multiple operating systems.
Even the GUI is not theirs, but it's not credited. It's Dear ImGui.
-
Good gui libraries for simple note taking app with sqlite database?
There's Dear ImGui
-
declarative GUI libraries
I think that Imgui would qualify as declarative. It is pretty much the industry standard for "simple GUI" at this point. It might be simple but it is powerful. People have built entire game engine editors using it.
-
Why do you love C++?
When it comes to writing GUIs, I'm a big fan of Dear Imgui. It's not going to be the best tool for every job, but it's fairly easy to work with and it doesn't go about overcomplicating things.
-
“fractureiser” malware in many popular Minecraft mods and modpacks
Also here, what appeared to be a bug in ImGuis clipboard handling turned out to be a crypto stealer
-
Ask HN: Examples of desktop software with 20+ years of longevity?
I would say that the distinction between TUI and GUI - outside "how would I use this tool remotely" - is mainly one for the developer. Take ImGui (https://github.com/ocornut/imgui, an immediate mode GUI library) for example - the examples are much closer to TUI interfaces than a Swift UI app - the only difference between that an a terminal UI would be that the lines are thinner and that text has non-uniform spacing.
Does that make ImGui a TUI? Or make TUIs a GUI? Why are those thin visual lines graphical, if the slightly thicker visual lines drawn by your graphical terminal emulator with support arbitrary color precision and inline image rendition is not?
Maybe the issue is that it there is a terminal emulator to visualize the representation. But if an application that is not graphically heavy and needs an intermediary is a TUI, does that make most utility electron apps TUIs?
The difference between a TUI and a GUI is just an implementation detail, and these do not matter in the distinction of desktop app or not. Heck, some modern terminal UIs are more graphically appealing than some GUI apps.
> The established definition of desktop, mobile, gui, tui and commandline is pretty consistent for some decades now I would say.
Considering that all good desktop apps were TUI apps 3 decades ago, that mobile apps are in their modern form has basically only existed for 1.5 decades, and that running mobile apps as desktop apps and the general merge between the disciplines is only a few years old at most, I'd say that this statement doesn't quite hold.
What are some alternatives?
wxWidgets - Cross-Platform C++ GUI Library
nuklear - A single-header ANSI C immediate mode cross-platform GUI library
NanoGUI - Minimalistic GUI library for OpenGL
GTK+ - Read-only mirror of https://gitlab.gnome.org/GNOME/gtk
CEGUI
TFT_eSPI - Arduino and PlatformIO IDE compatible TFT library optimised for the Raspberry Pi Pico (RP2040), STM32, ESP8266 and ESP32 that supports different driver chips
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
LovyanGFX - SPI LCD graphics library for ESP32 (ESP-IDF/ArduinoESP32) / ESP8266 (ArduinoESP8266) / SAMD51(Seeed ArduinoSAMD51)
FLTK - FLTK - Fast Light Tool Kit - https://github.com/fltk/fltk - cross platform GUI development
nana - a modern C++ GUI library
nuklear
webview - Tiny cross-platform webview library for C/C++. Uses WebKit (GTK/Cocoa) and Edge WebView2 (Windows).