A fork of microui, a tiny, portable, immediate-mode UI library written in ANSI C
- Tiny codebase
- Works within a fixed-sized memory region: no additional memory is allocated
- Built-in controls: window, scrollable panel, button, slider, textbox, label, checkbox, wordwrapped text
- Works with any rendering system that can draw rectangles and text
- Designed to allow the user to easily add custom controls
- Simple layout system
if (mu_begin_window(ctx, &mu_stringViewLiteral("My Window"), mu_rect(10, 10, 140, 86))) {
mu_layout_row(ctx, 2, (int[]) { 60, -1 }, 0);
mu_label(ctx, &mu_stringViewLiteral("First:"));
if (mu_button(ctx, &mu_stringViewLiteral("Button1"))) {
printf("Button1 pressed\n");
}
mu_label(ctx, &mu_stringViewLiteral("Second:"));
if (mu_button(ctx, &mu_stringViewLiteral("Button2"))) {
mu_open_popup(ctx, &mu_stringViewLiteral("My Popup"));
}
if (mu_begin_popup(ctx, &mu_stringViewLiteral("My Popup"))) {
mu_label(ctx, &mu_stringViewLiteral("Hello world!"));
mu_end_popup(ctx);
}
mu_end_window(ctx);
}- See
doc/usage.mdfor usage instructions - See the
demodirectory for a usage example
The library expects the user to provide input and handle the resultant drawing commands, it does not do any drawing itself.
This library is free software; you can redistribute it and/or modify it under the terms of the MIT license. See LICENSE for details.


