[software development] whiz 基于系统Webview组建的桌面应用框架
Tofloor
poster avatar
司南
deepin
2026-10-11 14:08
Author

最终,我还是把 whiz 改成了一个 CMake 库。

如果想尝试 whiz,可以参考“whiz-app-template”示例,它是一个展示如何使用 whiz 搭建桌面应用的模板。

下面是whiz库项目的介绍:

whiz 是基于 Saucer + C++23 + CMake 的轻量级桌面应用框架,提供类似 Electron 的开发体验:

用 C++ 组织窗口、WebView 与 IPC,前端构建产物可嵌入二进制实现单文件分发。

特性

  • 窗口 / WebView / IPC 抽象,贴近 Electron 的开发模型
  • 前端资源嵌入(whiz_embed_resources),入口 HTML 由 C++ 侧决定
  • 常用桌面能力:文件系统、系统信息、日志、崩溃捕获、原生对话框
  • 权限显式化:暴露给 JS 的能力默认关闭(IPC 基础能力默认开启)
  • 作为 CMake 库,可通过 FetchContent 集成

环境要求

  • C++23 编译器(GCC 13+ / Clang 16+ / MSVC 19.35+)
  • CMake 3.25+
  • Linux 开发包:libgtk-4-dev、libadwaita-1-dev、libwebkitgtk-6.0-dev、libjson-glib-dev

构建库

cmake -B build -DCMAKE_CXX_COMPILER=g++-14 -DCMAKE_BUILD_TYPE=Debug
cmake --build build -j

产物为 libwhiz.a。


现在whiz改名成waty了:https://github.com/yincolor/waty

Reply Favorite View the author
All Replies

No replies yet