lvgl
imgui
Our great sponsors
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
-
Ask HN: Nobody interested an open hardware iPod Nano?
So here is the thing: The iPod Nano 7g is from 2012. I've seen many people designing custom PCBs and releasing Kickstarter projects for custom audio players[5] or game handhelds[6]. I know Rockbox (which is great, but its lacks support for Wifi and Bluetooth AFAIK and just does not compete with the UX of iPod's audio book features in my opinion) and iPod Linux. 10 years ago someone even reverse engineered the iPod Nano 6g display[3].
Although I'm not skilled enough in PCB-Design, after some research I found the Lilygo T-Display S3 Pro[4] based on ESP32 S3, which would be the size, but lacks audio and OS. There is also the Mango PI CyberPad[7], which looked interesting, but maybe is already too clunky.
Programming wise, LVGL[8] may be a good framework to develop a modern and efficient UI - at least it looks promising.
So, why is nobody interested in recreating an iPod nano like device? It should be doable with modern tech, but Phones have completely taken over the marked...
1: https://www.reddit.com/r/audiobooks/comments/14ue4un/comment/ks1sj99/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
2: https://github.com/advplyr/audiobookshelf-app/issues/847
3: https://www.youtube.com/watch?v=7TedIzmguP0
4: https://www.lilygo.cc/products/t-display-s3-pro
5: https://www.youtube.com/watch?v=1C597AkhGtw
6: https://www.funkey-project.com/
7: https://mangopi.org/cp1m
8: https://lvgl.io/
-
LVGL 9.0 Released
LVGL is a graphics library used mostly for embedded UI's. Main website: https://lvgl.io/
-
imgui VS lvgl - a user suggested alternative
2 projects | 3 Nov 2023
Popular embedded UI library
-
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.
imgui
- Ask HN: Fastest cross-platform GUI stack/strategy
-
Immediate Mode GUI Programming
Immediate mode is a fuzzy concept, as witnessed by this writeup: https://github.com/ocornut/imgui/wiki/About-the-IMGUI-paradi...
The Dear ImGui readme is a good starting point:
https://github.com/ocornut/imgui
...now of course Dear ImGui is a specific implementation of an immediate mode UI framework, but it's also the most popular implementation.
- Nebula is an open-source and free-to-use modern C++ game engine
-
Dear ImGui: Bloat-free Graphical User interface with minimal dependencies
From the faq https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#q-w...
Q. What is this library called?
This library is called Dear ImGui. Please refer to it as Dear ImGui (not ImGui, not IMGUI).
(The library misleadingly started its life in 2014 as "ImGui" due to the fact that I didn't give it a proper name when I released 1.0, and had no particular expectation that it would take off. However, the term IMGUI (immediate-mode graphical user interface) was coined before and is being used in variety of other situations e.g. Unity uses it own implementation of the IMGUI paradigm. To reduce the ambiguity without affecting existing code bases, I have decided in December 2015 a fully qualified name "Dear ImGui" for this library.
ImGui is engine/GPU agnostic
Themeing isn't a just a retained mode thing, you can do wonders with immediate UIs, even thought (dear)ImGui doesn't provide much, you can still do wonders: https://github.com/ocornut/imgui/issues/707#issuecomment-362...
More on that topic: https://www.youtube.com/watch?v=Z1qyvQsjK5Y
My first guess would be it is supposed to sound like "Dear Imogen". However, it wasn't initially conceived of as a reference to anything. The "Dear" was tacked on to qualify the name [1].
[1] https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#q-w...
-
Where do I start to learn C++ for a game development
Bonus: If you want to make desktop app with UI, then this is another great C++ library and it's also simple to learn as well. https://github.com/ocornut/imgui.
-
GUI library for fast prototyping
AFAIK the Rust equivalent to C++'s Dear ImGui is egui.
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
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
LovyanGFX - SPI LCD graphics library for ESP32 (ESP-IDF/ArduinoESP32) / ESP8266 (ArduinoESP8266) / SAMD51(Seeed ArduinoSAMD51)
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
CEGUI
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).