Soui
No description available
Install / Use
/learn @soui4/SouiREADME
Language Versions / 语言版本
This README is available in the following languages:
Guide
SOUI4 is a lightweight Windows client development framework, continuously developed and maintained for 14 years. The compiled core is about 1MB. The framework design draws inspiration from popular frameworks such as WTL, Android, QT, and Flash. UI presentation is based on XML configuration, with high performance (choose GDI or Skia rendering), rich controls, and flexible extension (supports xml + lua + js), truly separating UI and logic.
Visit the SOUI Official Website.
Demo Screenshots

If you are new to SOUI, you can download the statically compiled demo.exe for a quick try (no need for source code or dependencies, just download and run).
Steps:
- Click the badge above to enter the page
- Click any link after the green circle
- Scroll down to find the
Artifactssection - Download and extract
PC_Demoto run
For more demo cases, visit the DEMO repository:
- https://github.com/soui4-demo Each demo is in a separate repository, clone as needed.
Getting Started
SOUI requires basic knowledge of C++ and Win32. Please ensure you are familiar with these skills. For more details, see the official documentation.
Git Repositories
Build Instructions
Use CMake to generate Visual Studio projects, then compile. All configuration is managed in CMake. For details, see build documentation.
UI Visual Designer
The latest souieditor is integrated in the demos folder. Build the demo to get souieditor.
SOUI4JS
- JavaScript export version for client development. Repository: soui4js
- Supports Windows, Linux, macOS.
SOUI4PY
- Python3 version for client development. Repository: soui4py
- Supports Windows, Linux, macOS.
Tutorials
- Latest Online Tutorial (most complete, updated regularly)
- Tutorial Source Code (host locally with http server)
- Author's Blog
- Author's Bilibili Video Tutorials
QQ Groups
Build Instructions
Windows
- Use CMake to generate project files, open with Visual Studio, and compile
- Or use mingw32/64:
mkdir build && cd build && cmake .. && make -j8
Linux
- Pull submodule swinx:
git submodule update --init - Install dependencies:
sudo apt install cmake git build-essential gdb libxcb1-dev libgl1-mesa-dev freeglut3-dev - Build:
mkdir build && cd build && cmake .. && make -j8
macOS
- Pull submodule swinx:
git submodule update --init - Install Homebrew (China mirror recommended)
- Install homebrew-core and homebrew-cask:
brew tap homebrew/core && brew tap homebrew/cask - Install tools and dependencies:
brew install cmake ninja pkgconf glfw3 glew - Build:
mkdir build && cd build && cmake .. -G Ninja && ninja -j8
Contributors
See contributors.md
License
See license.txt
Related Skills
node-connect
352.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.0kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
