Nuklear is an Unlicense or [[MIT License]]d GUI toolkit written in [[3. Reference/Software/Programming Languages/C|C]]. - [Website](https://immediate-mode-ui.github.io/Nuklear/doc/index.html) - [Github](https://github.com/Immediate-Mode-UI/Nuklear) - [Documentation](https://immediate-mode-ui.github.io/Nuklear/doc/index.html) # Notability Seems like a neat self-contained modern library for GUIs. # Philosophy > This is a minimal-state, immediate-mode graphical user interface toolkit written in ANSI C and licensed under public domain. It was designed as a simple embeddable user interface for application and does not have any dependencies, a default render backend or OS window/input handling but instead provides a highly modular, library-based approach, with simple input state for input and draw commands describing primitive shapes as output. So instead of providing a layered library that tries to abstract over a number of platform and render backends, it focuses only on the actual UI. Inspired by [[GUI - ImGui]] # OS Support Seems to support [[Linux]], [[MacOS]], and [[Windows]]. ## Bindings There are language bindings to this library from these languages: - [[Go|Golang]] - [[Rust]] - [[Nim]] - [[Lua]] - [[Python]] - [[V]] (as well as others) # Features - Immediate-mode graphical user interface toolkit - Single-header library - Written in C89 (ANSI C) - Small codebase (~18kLOC) - Focus on portability, efficiency and simplicity - No dependencies (not even the standard library if not wanted) - Fully skinnable and customizable - Low memory footprint with total control of memory usage if needed / wanted - UTF-8 support - No global or hidden state - Customizable library modules (you can compile and use only what you need) - Optional font baker and vertex buffer output - [Documentation](https://Immediate-Mode-UI.github.io/Nuklear/doc/nuklear.html)