GitPedia

GUIslice

GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL

From ImpulseAdventure·Updated June 25, 2026·View on GitHub·

**GUIslice** is a GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL The project is written primarily in C, distributed under the MIT License license, first published in 2016. It has gained significant community traction with 1,355 stars and 224 forks on GitHub. Key topics include: adafruit-gfx, arduino, arduino-library, c, embedded.

Latest release: v0.17.2Release v0.17.2
March 9, 2025View Changelog →

GUIslice library

Build Status
GitHub Issues
Contributions welcome
License

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.

Example 1
Example 5
GUIslice Builder

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, TSC2007, 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

Example 3
Example 4
snap07_c

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.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from ImpulseAdventure/GUIslice via the GitHub API.Last fetched: 6/28/2026