/GuiLite

✔️The smallest header-only GUI library(4 KLOC) for all platforms

Primary LanguageC++Apache License 2.0Apache-2.0

Welcome to GUI-lite

Logo

The smallest header-only GUI library (4 KLOC) for all platforms.

Why GuiLite

Lightweight

  • ✂️Small: 4,000+ lines of C++ code, zero dependency, header-only(GuiLite.h)

  • ⚡Fast: High Rendering performance, even work on MCU

  • 👫🏻Compatible: Work smoothly with 3rd party frameworks(Qt/MFC/Winform/Cocoa/Web)

  • ⚙️️Hardware Minimum Requirements:

    Processor Disk/ROM space Memory
    24 MHZ 29 KB 9 KB

Cross platform

  • Supported OSes: iOS/macOS/WatchOS, Android, Linux, Windows, RTOS... or MCU without OS
  • Supported languages: C/C++, Swift, Java, Javascript, C#, Golang...
  • Supported 3rd party libraries: Qt, MFC, Winforms, CoCoa...

Hero features

  • ☁️Cloud + IoT Solution: master your IoT business all over the world
  • 🔣Multi-language, supports UTF-8;📀Playback Video
  • 🔨Toolkit for building font/image resources
  • 📐Layout GUI WYSIWYG
  • 📊Code Telemetry and Analysis in real time(remove .sh/.bat files if dislike to share)
  • 📦Supports 3D and Web
  • 🐋Run in docker with a single command: sudo docker run -it --privileged -v /dev:/dev-share idea4good/gui-lite:latest bash /run.sh

Easy to learn and support

Even a C beginner could master GUI-lite quickly. The source code only uses basic C++ features (class, virtual function). We chose C++ as it could make the code size significantly smaller and easier to read.

Demo wall

  • Zero dependency, 100% build pass & runnable
  • Click the demo you like, and run it on your hardware
  • Most of the demos have about 100 lines of UI code, code repository is here.

MCU platform



3D on STM32

Wave on STM32

Particle on STM32

Star on STM32

3D wave on STM32

Keyboard on STM32

Mario on STM32

3D circle on STM32

3D donut on STM32

Timer

Molecule move

Pendulum effect

IoT feature



Monitor IoT device on cloud

Code Telemetry & Analysis in real time

Track IoT device over the world

Multi-language, Design tool and video



Lattice Font

Freetype Font

Layout GUI

Render JPG file quickly

Play video with FFmpeg

Widgets & Controller



Emulate Windows UI

Scroll widget

How to use widgets

3D Nets on Windows/Linux

Transparent dialog

Swipe view

Cross platform



HostMonitor on Windows

HostMonitor on Mac

HostMonitor on Android

HostMonitor on Windows Mixed Reality

HostMonitor on Linux

3D on Web

3D on Web

HostMonitor on iPhone

How display work

Apple platform



3D on Apple Watch

Wave on Apple Watch

Particle on iPhone

📞Community Channel

Thanks for the help from the community, you all make GUI-lite better! And welcome to any new friend to join us.


開發群🔑:938682319