vurtun/nuklear
FreeA single-header ANSI C gui library
FreeFree tier
About vurtun/nuklear
Nuklear is a minimal, immediate-mode graphical user interface toolkit written in ANSI C (C89) and released into the public domain. It is designed as a simple, embeddable user interface for applications, with no dependencies (not even the standard library if desired). The library focuses on portability, efficiency, and simplicity, offering a small codebase (~18kLOC), full skinnability, low memory footprint, UTF-8 support, and no global or hidden state. Features an optional font baker and vertex buffer output. Note: The original repository was archived as of December 2019; active development has moved to https://github.com/Immediate-Mode-UI/Nuklear.
Key Features
Immediate-mode graphical user interface toolkit
Single-header library (C89/ANSI C)
No dependencies (even standard library optional)
Small codebase (~18kLOC)
Fully skinnable and customizable
Low memory footprint with total memory control
UTF-8 support
No global or hidden state
Customizable library modules (compile only needed parts)
Optional font baker and vertex buffer output
Pros & Cons
Pros
- Minimal and portable – works on virtually any platform with a C compiler
- Zero external dependencies simplifies integration
- Public domain license allows unrestricted use
- Small memory footprint suitable for embedded environments
- Fully skinnable for custom look-and-feel
- Immediate mode paradigm reduces state management complexity
Cons
- No built-in render backends or OS window/input handling – requires manual integration
- Immediate mode may not suit complex, stateful UIs with many widgets
- Original repository archived; development has moved to a new location (may cause confusion)
- Limited widget set compared to full-featured GUI frameworks
- Documentation and examples are minimal outside the repository
Best For
Embedding a lightweight GUI in games and enginesBuilding developer tools or debug overlaysAdding a UI to embedded systems or resource-constrained devicesPrototyping and rapid UI development in C/C++ projectsCreating cross-platform tools without external GUI dependencies
FAQ
Is Nuklear still maintained?
The original repository was archived on December 2, 2019. Active development has moved to https://github.com/Immediate-Mode-UI/Nuklear.
Does Nuklear have any dependencies?
No, Nuklear has no dependencies, not even the standard library if you choose to disable it.
What is the license for Nuklear?
Nuklear is released under the public domain license.
Is Nuklear written in C or C++?
Nuklear is written in ANSI C (C89) and can be used from C and C++ code.