Open-source C projects categorized as GUI | Edit details

Top 23 C GUI Projects

  • GitHub repo libui

    Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports.

    Project mention: Ask HN: Is there any cross platform non native GUI written in C that looks good? | news.ycombinator.com | 2021-12-07


    Better yet, it has excellent DSLs that make it possible to build desktop apps in a way similar to HTML, but much better due to keeping all code dynamic in one language (no static/dynamic multi-language separation/mixing dissonance):

  • GitHub repo webview

    Tiny cross-platform webview library for C/C++/Golang. Uses WebKit (Gtk/Cocoa) and Edge (Windows)

    Project mention: Cannot call JavaScript function from Go webview | reddit.com/r/golang | 2022-01-11

    Hi, I am in the process of moving my app from the browser to webview. For the most part this works well but my JavaScript functions are not being called. What am I missing?

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

  • GitHub repo lvgl

    Powerful and easy-to-use embedded GUI library with many widgets, advanced visual effects (opacity, antialiasing, animations) and low memory requirements (16K RAM, 64K Flash).

    Project mention: Are there any cross-platform GUI libraries out there? | reddit.com/r/C_Programming | 2021-12-12
  • GitHub repo robotgo

    RobotGo, Go Native cross-platform GUI automation @vcaesar

    Project mention: Robotgo v0.100.0 is released, Go desktop automation. Enhancement bitmap and image, add arm support... | reddit.com/r/golang | 2021-09-27

    Link to the Readme: https://github.com/go-vgo/robotgo

  • GitHub repo nuklear

    A single-header ANSI C immediate mode cross-platform GUI library (by Immediate-Mode-UI)

    Project mention: C++ dev having trouble finding what ui toolkit to use for pet project | reddit.com/r/linuxmasterrace | 2021-11-30

    ### [Nukler](https://github.com/Immediate-Mode-UI/Nuklear)

  • GitHub repo xmake

    🔥 A cross-platform build utility based on Lua

    Project mention: Proposal to add build graph output to GNU Make | news.ycombinator.com | 2022-01-09

    xmake can also easily write some lua scripts to dump the build dependency graph https://github.com/xmake-io/xmake

  • GitHub repo nuklear

    This project provides Go bindings for nuklear.h — a small ANSI C GUI library. (by golang-ui)

    Project mention: Looking to make an image viewer/editor, which libraries should I consider? | reddit.com/r/C_Programming | 2021-12-07

    Another option that's pure c and a great library is nuklear https://github.com/vurtun/nuklear

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • GitHub repo Guitar

    Git GUI Client (by soramimi)

    Project mention: Looking for GIT GUI Client | reddit.com/r/linux | 2021-05-13
  • GitHub repo iPlug2

    C++ Audio Plug-in Framework for desktop, mobile and web [PRE-RELEASE]

    Project mention: does anyone know a tutorial on how to create a midi program? | reddit.com/r/code | 2021-03-08

    If what you want is to make VST plugins, you're going to need a lot more. I've used the iplug/iplug2 framework: https://github.com/iPlug2/iPlug2/tree/master/Examples/IPlugMidiEffect https://github.com/iPlug2/iPlug2

  • GitHub repo GTK+

    Read-only mirror of https://gitlab.gnome.org/GNOME/gtk (by GNOME)

    Project mention: Work towards a standard appindicator protocol has started (with support from GNOME and KDE) | reddit.com/r/linux | 2022-01-15

    GNOME does maintain GTK. It is the core of their development platform. Its code is even hosted on GNOME's Gitlab

  • GitHub repo linux-wifi-hotspot

    Feature-rich wifi hotspot creator for Linux which provides both GUI and command-line interface. It is also able to create a hotspot using the same wifi card which is connected to an AP already ( Similar to Windows 10).

    Project mention: Wifi Hotspot | reddit.com/r/Fedora | 2021-12-27

    Has anyone successfully set one up? I've tried every guide I could find but I can only get a connection with no internet access. I've also tried this: https://github.com/lakinduakash/linux-wifi-hotspot but it doesn't work. I know for a fact my adapter can run a hotspot because I had it setup on windows.

  • GitHub repo PDCurses

    PDCurses - a curses library for environments that don't fit the termcap/terminfo model.

    Project mention: PDCurses alternatives - notty and S-Lang | libhunt.com/r/PDCurses | 2021-12-30
  • GitHub repo lagrange

    A Beautiful Gemini Client

    Project mention: Lagrange: A desktop GUI client for Gemini | reddit.com/r/hackernews | 2021-11-20
  • GitHub repo ghost

    Ghost, a micro-kernel based hobby operating system for the x86 architecture. (by maxdev1)

    Project mention: Ghost Kernel | news.ycombinator.com | 2021-03-17


    >"Ghost is a hobby operating system for the Intel x86 platform. The project is licensed as GPLv3. It was started as a research project to learn more about low-level software programming and computer internals. The sources are available on GitHub (https://github.com/maxdev1/ghost).


    The kernel and the userspace applications are written from scratch in C++ and Assembly (and some C). It is not based on any existing kernel.

    There is a POSIX.1 compatibility layer to simplify porting some software to the system.

    o Micro-kernel

    o Symmetric multi-processing

    o Patched GCC (OS specific toolchain)

    o IPC (pipes, signals, messages, shared memory)

    o ELF executable & shared library support

    o libc, self-made

    o libghostapi, kernel API library

    o libghostuser, simplified file I/O, creating UIs etc.

    o libstdc++ port

    o VESA video driver

    o Window server (GUI with homemade toolkit)

    o PS/2 keyboard & mouse driver

    o Userspace filesystem driver support

    o Serial COM1 debug interface

    o Virtual 8086 for BIOS calls

    o Copy-on-write implementation, fork()

  • GitHub repo microwindows

    The Nano-X Window System

    Project mention: How to create a graphical application without relying on Xorg or Wayland? | reddit.com/r/NetBSD | 2021-05-26
  • GitHub repo mednaffe

    A front-end (GUI) for mednafen emulator

    Project mention: MiSTer FPGA vs Mednafen - PC Engine / TurboGrafx 16 Showdown Software Emulation vs FPGA Showdown! | reddit.com/r/RetroArch | 2021-11-11

    Using the commandline parameters or easy to do with mednaffe (GUI) https://github.com/AmatCoder/mednaffe/releases/tag/0.9.1

  • GitHub repo hello_imgui

    Hello, Dear ImGui: cross-platform Gui apps for Windows / Mac / Linux / iOS / Android / Emscripten with the simplicity of a "Hello World" app

    Project mention: Easiest to Build C++ Library | reddit.com/r/cpp | 2021-02-12

    (I ran git clone --recursive https://github.com/pthom/hello_imgui to get the hello_imgui directory)

  • GitHub repo totalcross

    TotalCross is a Software Development Kit that helps cross platform application development. Currently supported platforms are: Windows, Wince, Android, iOS, Linux and Linux ARM for embedded systems.

    Project mention: TotalCross: A Powerful Cross-Platform Development Technology | dev.to | 2021-08-18

    You can join the TotalCross community through the official website, GitHub and Discord. It will be a great experience and you are sure to learn a lot of great things! Look forward to seeing you there!

  • GitHub repo qtools

    QTools collection of open source tools for embedded systems development on Windows, Linux and MacOS

    Project mention: What software do professionals use to make GUI mockups for embedded systems? | reddit.com/r/embedded | 2021-12-13
  • GitHub repo virtual_touchscreen

    Simple evdev linux device driver and GUI program to simulate multitouch touchscreen

    Project mention: Can't use some apps which seem to require a touchscreen | reddit.com/r/Androidx86 | 2021-12-15

    Normally I use -device virtio-mouse-pci and these apps fail to respond. I've also tried -device virtio-input-host-pci both with a Wacom Bamboo pen tablet which can handle two touches at once, and https://github.com/vi/virtual_touchscreen/. With both of these, when there are two touch points active, something draws partially transparent white circles on the screen which move in sync with the touches, but the apps still don't respond.

  • GitHub repo showmethekey

    Show keys you typed on screen.

    Project mention: Inmon - an Input Monitor | reddit.com/r/LinuxUprising | 2021-12-21

    Hi. Thanks but I have already covered 2 such tools: Screenkey and KmCaster. There's also this which I only briefly mentioned in an article, which works on Wayland.

  • GitHub repo ncurses

    snapshots of ncurses - see http://invisible-island.net/ncurses/ncurses.faq.html (no pull requests are accepted)

    Project mention: ncurses alternatives - S-Lang, termbox, and rang | libhunt.com/r/ncurses-snapshots | 2021-12-30
  • GitHub repo ImFrame

    dear imgui + glfw framework

    Project mention: Is WinUI the most modern GUI library for C++ desktop applications on Windows? | reddit.com/r/cpp | 2021-12-06

    If you want a Dear Imgui "starter kit", you can try ImFrame. It packages a few libraries into a very lightweight cross-platform application framework.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-01-15.

C GUI related posts


What are some of the best open-source GUI projects in C? This list will help you:

Project Stars
1 libui 10,133
2 webview 9,348
3 lvgl 8,335
4 robotgo 7,153
5 nuklear 5,121
6 xmake 4,363
7 nuklear 1,459
8 Guitar 1,250
9 iPlug2 1,190
10 GTK+ 971
11 linux-wifi-hotspot 891
12 PDCurses 727
13 lagrange 699
14 ghost 392
15 microwindows 355
16 mednaffe 242
17 hello_imgui 214
18 totalcross 177
19 qtools 79
20 virtual_touchscreen 68
21 showmethekey 40
22 ncurses 37
23 ImFrame 29
Find remote jobs at our new job board 99remotejobs.com. There are 29 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
OPS - Build and Run Open Source Unikernels
Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.