ghaerr/microwindows
FreeThe Nano-X Window System
About ghaerr/microwindows
Microwindows (also known as the Nano-X Window System) is a small, open-source graphical windowing system written in C. It implements both Win32 and Nano-X (X11-like) APIs for clipped graphics drawing on a wide range of platforms including Linux, Mac OS X, Android, ELKS, EMSCRIPTEN, and many more. The system includes built-in support for Nuklear immediate-mode GUI, Win32 built-in controls, and TinyWidgets. It can run FLTK applications via the NX11 X11 compatibility library, and supports multiple screen drivers (framebuffer, X11, SDL2, Allegro 5, Windows, VGA) along with mouse, keyboard, and touch input. Microwindows is licensed under the Mozilla Public License and is highly portable, supporting cross-compilation for x86, ARM, M68K, PowerPC, MIPS, and other architectures.
Key Features
Pros & Cons
- Very portable, written in C, and supports a wide range of platforms and architectures
- Small footprint suitable for embedded systems
- Open source under MPL with permissive licensing
- Supports both Win32 and X11-like APIs, easing application porting
- Includes multiple built-in GUI toolkits (Nuklear, Win32 controls, TinyWidgets)
- Active development with recent additions like PDF viewer and media player
- Can run multiple Win32 apps simultaneously (unique feature)
- Touch input and multiple screen driver support
- Documentation may be slightly outdated (as noted on the site)
- Limited community and ecosystem compared to larger GUI frameworks like Qt or GTK
- Does not appear to leverage GPU acceleration (software rendering only)
- Some new features (e.g., PDF viewer, media player) are early-stage and may lack maturity