# Immediate-Mode-UI/Nuklear

A single-header ANSI C immediate mode cross-platform GUI library

Repository: https://github.com/Immediate-Mode-UI/Nuklear
Canonical: https://ross.abutalabs.com/products/immediate-mode-ui-nuklear
Homepage: https://immediate-mode-ui.github.io/Nuklear/
Language: C
License: NOASSERTION
License Family: other
Topics: c, gui, nuklear, single-header-lib, single-header, c89, imgui, multiplatform, header-only
Last push: 2026-08-08T02:06:24+00:00

## Health v2 (maintenance only)
Score: 88/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 96, release rhythm 70, longevity 100
- inputs: {"age_days": 2472, "days_push": 26, "days_rel": 121, "gap_med": 49, "n_releases_24m": 2}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 11350, forks 685 (observed 2026-08-28T04:10:46.832583+00:00)

## What it is
Nuklear is a minimal-state, immediate-mode graphical user interface toolkit written in ANSI C (C89) and distributed as a single-header library under public domain. It has no dependencies, no default render backend, and no OS window/input handling, instead outputting primitive draw commands and accepting simple input state so developers can plug in their own platform and rendering layers.

## Use cases
- add a debug or tool UI to a C or C++ game or engine
- build an embeddable GUI with minimal dependencies and small memory footprint
- render immediate-mode widgets with a custom renderer like OpenGL, SDL, or DirectX
- create cross-platform tools that need a lightweight skinnable interface
- integrate a UI into embedded or constrained environments with full memory control
- prototype editor panels and node graphs inside native applications

## When to choose
- you need a dependency-free, single-header GUI in C or C++
- you want full control over rendering, memory, and platform integration
- you need maximum portability including ANSI C89 compilers
- you prefer immediate-mode UI semantics with no hidden or global state

## When to avoid
- you need a full-featured retained-mode GUI with built-in widgets, theming tools, and accessibility
- you want a library that handles windowing, input, and rendering out of the box
- you are building a polished end-user desktop application and prefer a high-level framework
- you need rich text layout, complex animations, or native platform look-and-feel

## Facets
- artifact type: library
- maturity: stable
- function: ui-components, gui
- domain: cross-platform, developer-tools
- platform: cross-platform, cpp, c
- tags: immediate-mode, single-header, c89, header-only, imgui, embeddable, no-dependencies, public-domain, game-development

## Member repositories
- Immediate-Mode-UI/Nuklear (main) score 88

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:46.832583+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:15:42.796470+00:00, confidence not recorded.
  - readme: https://github.com/Immediate-Mode-UI/Nuklear (fetched 2026-08-28T04:10:46.832583+00:00, sha fa11b6b11444)
  - homepage: https://immediate-mode-ui.github.io/Nuklear/ (fetched 2026-08-29T08:14:28.902773+00:00, sha 2259cd39b7c8)
- Data as of 2026-08-30T08:39:29.467469+00:00.
