libui-ng
microui
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.
libui-ng
-
Writing Gnome Apps with Swift
I remember a few years ago, a few really cool cross-platform UI libraries were starting to emerge such as libui [0] that got me excited. I've kind of lost track of them since then (libui itself went dormant for a while before this fork) so I am not sure how mature/useful they are now, but the potential for writing native desktop UIs in basically any language seemed like an absolute dream. Perhaps it's feasible for very basic things?
[0] https://github.com/libui-ng/libui-ng
-
Ask HN: Fastest cross-platform GUI stack/strategy
Linux/Windows/MacOS: https://github.com/libui-ng/libui-ng
- libui-ng – a portable GUI library for C
-
Zig instead of Rust.. and can it do these things?
There are a few libraries for GUI (for example, capy), and you can easily use any C libraries out there with @cImport (like libui), but it is still a work in progress.
- Libui-ng: a portable GUI library for C (fork of libui)
-
Is it possible to build a gui which is both cross compatible and native?
It exists, at least for simple use cases. You are looking for libui-ng. wxWidgets of course also exists, but it is less a basic native wrapper than it is a complete toolkit emulating what doesn't exist where as libui seems to be more lowest common denominator (not sure but I think there might be a small amount of emulation, but not like wx I don't think).
-
A lightweight, simple, fast, feature-filled, text editor written in C, and Lua
There's now libui-ng [1] which seems to be active and already has many wrappers
[1] https://libui-ng.github.io/libui-ng/
- Java 20 - Sneak Peek on the Foreign Function & Memory API (2nd preview)
- _why's Estate
- Libui-ng: Active fork of libui, a native cross-platfrom GUI SDK (+documentation)
microui
-
Immediate Mode GUI Programming
There is also microui, which I like[0].
Which I forked to work with SDL2[1], no guarantees. It's fun to hack on.
[0]https://github.com/rxi/microui
[1]https://github.com/kennethrapp/microui
- MicroUI: Tiny immediate-mode UI library
-
What should I use to make GUI with SDL
Otherwise, https://github.com/rxi/microui is small enough that you can hack around. Look at the issue though, there's a bit of unaligned access there.
-
ImGui or text rendering libraries
For GUI, there are lots, most well-known of course being Dear Imgui, for which people have made auto-generated C bindings. Another mature but a lot simpler option is Nuklear, as others have mentioned. Even more minimalistic (it's just 1KLOC) is microui. There are a lot more, just google "imgui library c".
- A lightweight, simple, fast, feature-filled, text editor written in C, and Lua
-
Nuklear – A single-header ANSI C immediate mode cross-platform GUI library
The price for the 'lightest' UI toolkit probably goes to microui:
https://github.com/rxi/microui
Just around 1100 lines of C code.
You need to bring your own renderer, but that's the same for Nuklear or Dear ImGui.
I wrote a WASM wrapper for the microui demo too:
https://floooh.github.io/sokol-html5/sgl-microui-sapp.html
-
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
-
I haven't been using Linux that much yet, but because of my experience with Xfce, and because others don't seem to enjoy desktop environments on Linux too much, I want to create my own.
Really? Here's a minimal UI with I believe less LOC than Suckless DWM. It's not a full DE, but I imagine you could probably turn it into one without adding that much more code.
- Best way to write a cross-platform graphical program in C while using only bare minimum third-party libraries?
- resources for making a gui library
What are some alternatives?
raygui - A simple and easy-to-use immediate-mode gui library
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
nappgui - Cross-Platform C SDK (precompiled)
sokol - minimal cross-platform standalone C headers
Gtk4-tutorial - GTK 4 tutorial for beginners
nanovg - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations.
libui - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.
pixeltoaster - PixelToaster is a framebuffer library for C++
nuklear - A single-header ANSI C immediate mode cross-platform GUI library
minifb - MiniFB is a small cross platform library to create a frame buffer that you can draw pixels in
med - Micro Emacs in D
nuklear