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
-
Open-Source Project Reccomendation
lvgl
-
Is there any MIT/BSD licensed UI framework for C++ ?
LVGL (https://lvgl.io/) - MIT
-
How to implement a GUI in c++?
2) if you're running it on an embedded device with limited memory then i'd suggest lvgl (https://github.com/lvgl/lvgl)
-
GUI library / framework
I've had good luck with LGVL.
-
Resources to learn how to create a display-driving embedded linux application?
If Qt licensing turns out to be unreasonable for you either way, there are a few other graphical toolkit options. One of my favorites is LVGL. That one might be closer to what you're used to in the microcontroller C space; very very light on resources, but could be a lot more work to develop (unless you're just so used to C that you pick it up naturally). Running it on Linux is a lot easier than on a microcontroller since you can use SDL or write direct to the framebuffer. LVGL UIs can also be prototyped fairly easily in a web browser playground.
-
GUI for software, not games, but lighter than Qt ?
LVGL. It is designed for embedded system, but can be used on virtually every platforms.
-
I made a shortlist of good libraries for my GUI C project and I want your thoughts and comments.
Good C library list: https://en.cppreference.com/w/c/links/libs https://github.com/Immediate-Mode-UI/Nuklear + C89, no dependencies, public license. 5/5 https://www.tecgraf.puc-rio.br/iup/ + good tutorial and wiki guides 5/5 https://libsdl.org/ + infinite possibilities - whole library for making games, forums, wiki - complicated, not many C tutorials, need to manage game states... 4/5 https://github.com/lvgl/lvgl + good docs - for embedded systems 4/5 https://github.com/ocornut/imgui + Popular, inspired Nuklear - for C++ 3/5 https://docs.enlightenment.org/api/imlib2/html/ + very efficient, used in Conky - uses X so only for Linux, just for displaying images and text and stuff 2/5 https://github.com/rxi/microui + simple, small - you need to handle your own drawing 2/5 GTK+ - no
-
Embedded GUI Contest
So RT-Thread IoT OS partnered with LVGL, STMicroelectronics, Nuvoton, and NXP to bring this contest, opening an opportunity for embedded developers that come from everywhere to explore more possibilities with embedded GUI.
-
What GUI library should I start with after learning C?
I actually ran across this and thought it would be fun to play around with https://github.com/lvgl/lvgl
- Are there any cross-platform GUI libraries out there?
imgui
-
Is there any MIT/BSD licensed UI framework for C++ ?
If your program doesn't need to conserve power, you can use Dear ImGUI, it's very easy to use and can run through most rendering APIs or graphic libraries. The Cherno on YouTube has some good videos on it to kickstart you
I'm not sure if this is what you're looking for, but Dear ImGUI is kind of a gold standard within the AAA game development industry. It's MIT licensed and u/ocornut is one of the most helpful and coolest dudes in the open source world.
Take a look at dear imgui, https://github.com/ocornut/imgui.
- which is the way to create fastest and lightest gui programs which language and toolkit choose ?maybe
-
Lars Knoll Leaves the Qt Company
C++ devs there is also bloat-free 'Dear ImGUI', nice for simple but also interesting user interfaces. https://github.com/ocornut/imgui
Not a 'native' feel and not for everybody, but a pleasure to use, in my opinion.
-
How do i display things in c++?
Imgui (https://github.com/ocornut/imgui) has always been my go to for this sort of thing. Its cross platform and pretty easy to get your head around, especially if you're not a UI kind of person.
-
Librarii grafice
https://github.com/ocornut/imgui - here you go ^.^, dear-imgui.
-
Are there any low-level library options for creating desktop apps?
The only thing I could really think of is something like ImGui for C# (https://github.com/mellinoe/ImGui.NET) but I've never used it. It's going to give you some simple wrappers around ImGui (https://github.com/ocornut/imgui) but even this is going to lock you into the UI framework -- you can't just "draw a rectangle" per se and use it as a "control." Do note however this is an "immediate mode" GUI which is different from how most general desktop windowing systems work in "retained mode" (which are typically event driven, which saves on computing power to not draw the same stuff over and over).
-
ImGui - Cannot open source file "vulkan/vulkan.h
So I just watched a video by The Cherno which he talked about ImGui and how to install it so I followed along copied the docking git repository then went into my folder examples and opened the imgui_examples.sln file and chose the example_glfw_vulkan option and opened source/main.cpp and there is our problem. When I opened it under line 20 "#include " there is a red line and it says "Cannot open source file "vulkan/vulkan.h". Does anyone have a solution or should I switch to the other options like opengl3/directx12 etc.
What are some alternatives?
nuklear - A single-header ANSI C immediate mode cross-platform GUI library
NanoGUI - Minimalistic GUI library for OpenGL
wxWidgets - Cross-Platform C++ GUI Library
CEGUI
GTK+ - Read-only mirror of https://gitlab.gnome.org/GNOME/gtk
nana - a modern C++ GUI library
FLTK - FLTK - Fast Light Tool Kit - https://github.com/fltk/fltk - cross platform GUI development
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
raylib - A simple and easy-to-use library to enjoy videogames programming
webview - Tiny cross-platform webview library for C/C++/Golang. Uses WebKit (Gtk/Cocoa) and Edge (Windows)
MyGUI - Fast, flexible and simple GUI.
libui - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.