CUI brings native desktop UI components to plain C99 with zero dependencies

CUI – Native UI components for C

CUI is a native UI toolkit for C99 that ships around 64 complete components — data grids, command palettes, node editors, charts — in a single codebase with no dependencies. It uses an immediate-mode model where components are functions that redraw every frame, so there's no state to sync. A full app weighs about 250 KB and builds a frame in 0.1 to 0.25 ms, running on Win32, Cocoa, and X11.

Components are functions that draw themselves and return what happened. Your variables are the state, and the whole screen is described again every frame, so there is nothing to keep in sync.
  1. nepthar

    Okay, so this is cool, but also vibecoded by someone who just does frontend. I totally support AI development, but the first commit was 4 days ago and it's entirely written by claude. The UI looks like "the style that that AI comes up with" turned into a C framework.

    I don't want to discourage this kind of experimentation, but I also question how much of the last 20+ years of UI and C knowledge was not used in the construction of this project. Also, do I want to build a kanban board in C? Unsure.

    Just take care when evaluating this for actual usage.

  2. hollowturtle

    I click around on mobile nothing happens, vibe coded trash. I’d spend 10 minutes comparing it to Clay but it’s not worth it I already know the result. The problem with this kind of projects is they expire very soon, the least the effort the least the value

  3. zerr

    More like custom UI components. Native would have been if you had wrapped e.g. Cocoa NSButton on macOS and Microsoft.UI.Xaml.Controls.Button on WinUI.

  4. turtlebits

    We need a HN min-release-age flag for posted projects.

    Or some flag to ignore users that post these types of projects often.

  5. piker

    C increasingly makes sense for compile times if you can have a separate Fable pass on memory safety, etc.

More from this day

2026-11-09