Open-source C projects categorized as GUI

Top 23 C GUI Projects

  • lvgl

    Embedded graphics library to create beautiful UIs for any MCU, MPU and display type.

    Project mention: LVGL 9.0 Released | news.ycombinator.com | 2024-01-22

    LVGL is a graphics library used mostly for embedded UI's. Main website: https://lvgl.io/

  • webview

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

    Project mention: Why Bloat Is Still Software's Biggest Vulnerability | news.ycombinator.com | 2024-02-09

    You can create the webview using each platforms native GUI toolkit and setup JS communication yourself OR you can use a lightweight library that does it for [1] (search its README for language "bindings").

    [1] https://github.com/webview/webview

  • LearnThisRepo.com

    Learn 300+ open source libraries for free using AI. LearnThisRepo lets you learn 300+ open source repos including Postgres, Langchain, VS Code, and more by chatting with them using AI!

  • libui

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

    Project mention: Short history of all Windows UI frameworks and libraries | news.ycombinator.com | 2024-02-10

    You can kind of see the desktop UI train wreck in real time here.

    We started with simple stable APIs for a common look and feel. For a while these were evolved and made available in other languages. This was back when native apps were consistent and intuitive and you could… uhh… actually write and ship them without bundling giant runtimes or checking a huge compatibility matrix.

    Then around 2012 the train rounds the bend and screeeeech it hits some bad track and starts to derail. UI starts trying to emulate the web, a terrible UI platform, and sane compositional UI libraries and APIs are abandoned in favor of XML soup.

    Since this stuff is a trash fire, this is followed by multiple incompatible attempts to replace or fix this. Most of these are abandoned dead ends.

    Meanwhile the dev community just said fuck it and went to Electron, creating today’s world where a “hello world” app with an OK button is hundreds of megabytes and has to load an entire private copy of a language runtime and rendering engine.

    Versions of this comedy of errors have occurred on every other platform, and of course there has been little effort to create a cross platform UI API that’s sane beyond Qt (with its own problems) and dozens of half completed OSS projects.

    So enjoy Electron I guess.

    There was one sane human being who tried to do this a while ago:


    It’s the only sane desktop UI project I’ve seen in almost 20 years, an attempt to create an actual cross platform common API. But it’s abandoned of course, likely too difficult for one dev and nobody is going to provide financial support for anything that sane.

    Maybe AI will get good enough some day that we can use it to do a thing like that.

  • nuklear

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

    Project mention: Ask HN: Do you have a problem you'd pay to have taken away? | news.ycombinator.com | 2024-01-07
  • awtk

    AWTK = Toolkit AnyWhere(a cross-platform embedded GUI)

    Project mention: AWTK = Toolkit AnyWhere(a cross-platform embedded GUI) | news.ycombinator.com | 2023-12-07
  • Elements C++ GUI library

    Elements C++ GUI library

    Project mention: declarative GUI libraries | /r/cpp | 2023-06-23
  • raygui

    A simple and easy-to-use immediate-mode gui library

    Project mention: Trying raylib, first time user, what should I know? | /r/raylib | 2023-07-12

    About the UI interface, I created raygui a simple immediate-mode UI library, you can also take a look: https://github.com/raysan5/raygui

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • 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: is there an easier way to access Gen 4 Pokémon GTS? | /r/3dspiracy | 2023-05-20

    Wi-Fi hotspot: https://github.com/lakinduakash/linux-wifi-hotspot

  • webui

    Use any web browser as GUI, with your preferred language in the backend and HTML5 in the frontend, all in a lightweight portable lib.

    Project mention: Use any web browser as GUI, with Zig in the back end and HTML5 in the front end | news.ycombinator.com | 2024-01-01

    It's not confidence-inspiring that https://webui.me throws security warnings. I'd want folks to make applications "that make applications" to take security a little more seriously.

  • iPlug2

    C++ Audio Plug-in Framework for desktop, mobile and web

  • nuklear

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

  • GTK+

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

    Project mention: Testing out stuff for bookworm 12 release. KDE theming | /r/debian | 2023-06-04

    Clone https://gitlab.gnome.org/GNOME/gtk

  • helenos

    A portable microkernel-based multiserver operating system written from scratch.

  • lagrange

    A Beautiful Gemini Client

    Project mention: Support for gzip compression | /r/geminiprotocol | 2023-06-16

    I've proposed such solution in Lagrange feature request. What do you think?

  • IconFontCppHeaders

    C and C++ headers, C# and Python classes, Rust files and Go package for icon fonts Font Awesome, Fork Awesome, Google Material Design, Pictogrammers Material Design icons, Kenney game icons, Fontaudio, Codicons and Lucide.

  • GUIslice

    GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL

    Project mention: Display and Touch Driver not supported by GUIslice | /r/arduino | 2023-07-07
  • sqlite-gui

    Lightweight SQLite editor for Windows

    Project mention: C# program not able to open or connect to an encrypted SQLite Database | /r/sqlite | 2023-04-30

    DB4S provides only one algorithm based on official SQLite cipher. You can encrypt your database with another in SQLiteStudio or sqlite-gui (I'm an author). Both applications use SQLite3 Multiple Ciphers-library.

  • PDCurses

    A curses library for environments that don't fit the termcap/terminfo model.

    Project mention: How to make a GUI? | /r/DOS | 2023-07-09

    The latest version can be found at: https://pdcurses.org/

  • kernel

    Kernel for gramadoOS. (by gramado)

    Project mention: Gramado OS | Working on my window manager. | /r/osdev | 2023-03-18
  • microwindows

    The Nano-X Window System

    Project mention: The Nano-X window system | news.ycombinator.com | 2024-02-02
  • ghost

    Ghost, a micro-kernel based hobby operating system. (by maxdev1)

  • OTE

    OSINT Template Engine (by 3nock)

    Project mention: Introducing OSINT Template Engine: An open source OSINT Tool. | /r/websecurityresearch | 2023-07-12
  • mednaffe

    A front-end (GUI) for mednafen emulator

    Project mention: Best games on original hardware, not emulation | /r/retrogaming | 2023-05-08
  • WorkOS

    The modern API for authentication & user identity. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

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 2024-02-10.

C GUI related posts


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

Project Stars
1 lvgl 14,441
2 webview 11,864
3 libui 10,590
4 nuklear 8,279
5 awtk 2,953
6 Elements C++ GUI library 2,862
7 raygui 2,804
8 linux-wifi-hotspot 2,702
9 webui 1,884
10 iPlug2 1,751
11 nuklear 1,554
12 GTK+ 1,323
13 helenos 1,276
14 lagrange 1,128
15 IconFontCppHeaders 1,064
16 GUIslice 1,052
17 sqlite-gui 1,022
18 PDCurses 966
19 kernel 641
20 microwindows 587
21 ghost 557
22 OTE 452
23 mednaffe 379
The modern API for authentication & user identity.
The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.