GUIslice library
A lightweight GUI framework for embedded displays
Design your GUI with a drag & drop builder , then apply the same code to a wide range of displays, libraries and controllers with the cross-platform framework . Open source MIT license grants free commercial usage.
Features
Pure C library, no dynamic memory allocation
Widgets :
text, images, buttons, checkboxes, radio buttons, sliders, custom keypads, listbox,radial controls, scrolling textbox / terminal, graphs, etc. plus extensions and multiple pages.
Cross-platform GUIslice Builder application to generate layouts
Platform-independent GUI core currently supports:
Adafruit-GFX, TFT_eSPI, mcufriend, UTFT, LCDGFX, SDL1.2, SDL2.0
Devices :
Raspberry Pi, Arduino, ATmega2560, ESP8266 / NodeMCU, ESP32, M5stack, Teensy 3 / T4, WIO Terminal, Feather M0 (Cortex-M0), nRF52 (Cortex-M4F), LINUX, Beaglebone Black, STM32, Due, etc.
Typical displays :
PiTFT, Adafruit TFT 3.5" / 2.8" / 2.4" / 2.2" / 1.44", FeatherWing TFT, OLED 0.96", mcufriend, BuyDisplay / EastRising 4.3" 5" 7", Waveshare, 4D Cape
Display drivers include :
ILI9341, ST7735, SSD1306, HX8347D, HX8357, PCD8544, RA8875, RA8876, ILI9225, ILI9341_t3, ILI9341_due
Touchscreen control including :
STMPE610, FT6206, FT5206, XPT2046, 4-wire, tslib, URTouch, Adafruit Seesaw
IDE Support :
GUIslice has been tested for use in the Arduino IDE and Platform IO environments, in addition to LINUX make
Foreign characters / UTF-8 encoding (in SDL mode), anti-aliased fonts (in TFT_eSPI mode)
Dynamic display rotation
GPIO / pin / keyboard / Adafruit Seesaw navigation for non-touchscreen devices
Screenshots
GUIslice Builder
Includes cross-platform (Windows, LINUX and Mac) desktop application to generate GUIslice layouts
Please refer to GUIslice Builder wiki for documentation
Disclaimer
The Software is not designed for use in devices or situations where there may be physical injury if the Software has errors.