nana
a modern C++ GUI library (by cnjinhao)
GTK+
Read-only mirror of https://gitlab.gnome.org/GNOME/gtk (by GNOME)
Our great sponsors
nana | GTK+ | |
---|---|---|
8 | 15 | |
2,244 | 1,335 | |
- | 1.7% | |
0.0 | 9.8 | |
25 days ago | about 15 hours ago | |
C++ | C | |
Boost Software License 1.0 | GNU General Public License v3.0 or later |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
nana
Posts with mentions or reviews of nana.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-05-21.
-
Is there any MIT/BSD licensed UI framework for C++ ?
https://github.com/cnjinhao/nana Boost Software License
Nana is under Boost Software License.
-
Best GUI Library for C++?
well, nana seems to still be developed, but it's in another branch for now: https://github.com/cnjinhao/nana/tree/develop-1.8
-
Is there a C++ GUI library that works on all platforms
I’ve seen people use https://github.com/cnjinhao/nana, but the other suggestions are probably better.
- Qt alternatives
-
Open Source GUI programs in C++
I would suggest https://github.com/cnjinhao/nana . There is also https://github.com/andlabs/libui, although that is C (not C++).
-
Modern UI in C++ on Linux
I especially appreciate its one string layout method nana::form::div(), see https://github.com/cnjinhao/nana/wiki/Div-Text
GTK+
Posts with mentions or reviews of GTK+.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-02.
-
How many layers of UI inconsistencies are in Windows 11?
GTK and Gnome are almost 25 years old, and they're nowhere as messy as the Windows
-
Change color Adwaita theme
git clone gtk repo, git checkout the gtk-3-24 branch.
- Podman Desktop Companion GUI
-
Trying to learn how to develop applications, stuck because of meson and gschemas.
I'm trying to make a text editor in gtk (yes I know there are already plenty of those, but it is a project to learn, not for actual use), and I got pretty far already I would think. I'm basically following the GTK docs for GTK4 and cross checking them with the examples from the GTK git. However I am stuck on something. The current most state of my program is broken, as I get this error when trying to start the program:
-
Distinguishing between smooth scroll events and regular scroll events
I have never tested that, but according to the code in GDK (X11, Wayland) looks like set_pointer_emulated() is called on compatibility scroll events. Maybe looking through the code may give more insights
Try calling gdk_event_get_pointer_emulated. It's implemented for scroll events, too: https://github.com/GNOME/gtk/blob/master/gdk/gdkevents.c#L874
What are some alternatives?
When comparing nana and GTK+ you can also consider the following projects:
imgui - Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies
FLTK - FLTK - Fast Light Tool Kit - https://github.com/fltk/fltk - cross platform GUI development
wxWidgets - Cross-Platform C++ GUI Library
gtkmm - Read-only mirror of https://gitlab.gnome.org/GNOME/gtkmm
nuklear - A single-header ANSI C immediate mode cross-platform GUI library
NanoGUI - Minimalistic GUI library for OpenGL
libui - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.
Elements C++ GUI library - Elements C++ GUI library