microui is a minimal immediate-mode graphical user interface library written in C, designed for resource-constrained environments such as embedded systems. It operates without dynamic memory allocation and has no external dependencies beyond standard C, making it a self-contained solution for building lightweight interfaces.
The library is delivered as a single header file, simplifying integration into any project. It uses a fixed-allocator heap for all runtime state, guaranteeing deterministic memory use and predictable performance. All drawing is delegated to user-supplied callbacks, keeping the library platform-agnostic and flexible. Its container-stack layout system positions and spaces controls automatically, with a single function to manage rows and columns.
The included controls cover windows, buttons, sliders, text boxes, checkboxes, and word-wrapped labels, providing enough building blocks for simple interactive tools or UI mock-ups. The immediate-mode approach rebuilds the interface each frame from input and drawing commands, retaining no widget tree between frames.