「 HuskarUI 」 Modern UI for Qml

August 16, 2026 · View on GitHub

「 HuskarUI 」 Modern UI for Qml

Ant Design component library for Qt Qml

If you need Python impl HuskarUI for PySide6

If you need Qt5 impl HuskarUI for Qt5

win-badge linux-badge macos-badge android-badge

Issues Issues Release

QQGroup

Ask DeepWiki

English | 中文

✨ Features

  • 📦 A set of high-quality Qml components out of the box.
  • 🎨 Powerful theme customization system.
  • 💻 Based on Qml, completely cross platform.
  • 🔧 Highly flexible delegate based component customization.
  • 🤖 AI-assisted development support.

🗺️ Roadmap

The development plan can be found here: Component Roadmap.

Anyone can discuss through issues, QQ groups, or WeChat groups, and ultimately meaningful components/functions will be added to the development plan.

🤖 AI Agent Assisted Development

Note

Intelligent agent skills

This warehouse provides two intelligent agent skills:

  • huskarui:: Use Python to query the documentation, properties, and examples of HuskarUI components from the repository metadata.
  • qmlpreviewer:: Use qmlscene to preview the currently edited QML file and capture a screenshot of the run to the clipboard.

They are designed specifically for AI Agent programming tools such as Claude Code and Codex. It can help you:

  • Quickly query component documents and properties
  • Obtain scenario based development examples
  • Automatically iterate and preview code

👉 See AI Agent Skill Guide for more details.

🔖 Online Document

🌐 Online Wiki

📺 Online Demo

🗂️ Precompiled package

Precompiled packages and binary libraries for two platforms, Windows / Linux, have been created.

Please visit Release to download.

🔨 How to Build

  • Clone
git clone --recursive https://github.com/mengps/HuskarUI.git
  • Build & Install
    • Windows - Visual Studio
    cd HuskarUI
    cmake -DCMAKE_PREFIX_PATH=<QT_DIR> -G "Visual Studio <version>" -B build -S . 
    cmake --build build --config Release --target ALL_BUILD INSTALL --parallel
    
    • All - Ninja
    cd HuskarUI
    cmake -DCMAKE_PREFIX_PATH=<QT_DIR> -G "Ninja" -B build -S . 
    cmake --build build --config Release --target all install --parallel
    

Important

By default, INSTALL_HUSKARUI_IN_DEFAULT_LOCATION=ON:

  • the headers will be install in the [QtDir]/[QtVersion]/[Kit]/include/HuskarUI directory.
  • the *.dll will be install in the [QtDir]/[QtVersion]/[Kit]/bin directory.
  • the *.lib/*.so/*.dylib will be install in the [QtDir]/[QtVersion]/[Kit]/lib directory.
  • the qmlplugin will be install in the [QtDir]/[QtVersion]/[Kit]/qml directory.

If you want to change the installation directory, please modify the INSTALL_HUSKARUI_IN_DEFAULT_LOCATION to OFF and set the HUSKARUI_INSTALL_DIRECTORY in the cmake.

cmake -DCMAKE_PREFIX_PATH=<QT_DIR> \
  -DINSTALL_HUSKARUI_IN_DEFAULT_LOCATION=OFF \
  -DHUSKARUI_INSTALL_DIRECTORY=<install_dir> \
  -G "Ninja" -B build -S .

The installation directory structure

──<install_dir>
    ├─include
    │   └─HuskarUI/*.h
    ├─bin
    │   *.dll
    ├─lib
    │   *.lib/*.so/*.dylib
    │   └─cmake/*.cmake
    └─qml
        └─HuskarUI/Basic
        └─HuskarUI/Impl
  • Usage
    • Using cmake Add the following cmake command to your project CMakeLists.txt
      find_package(HuskarUI REQUIRED)
      target_link_libraries(<your_target> HuskarUI::Basic)
      
    • Directly using the library
      • Link the <install_dir>/lib.
      • Include the <install_dir>/include.
      • [Optional] Copy the <install_dir>/bin/HuskarUIBasic.[dll] to [QtDir]/[QtVersion]/[Kit]/bin.
      • [Optional] Copy the <install_dir>/lib/HuskarUIBasic.[so/dylib] to [QtDir]/[QtVersion]/[Kit]/bin.
      • Copy the <install_dir>/qml/HuskarUI to [QtDir]/[QtVersion]/[Kit]/qml.

📦 Get started

  • Create QtQuick application QtVersion >= 6.7
  • Add the following code to your main.cpp

 int main(int argc, char *argv[])
 {
     ...
     /*! Set OpenGL, optional */
     QQuickWindow::setGraphicsApi(QSGRendererInterface::OpenGL);
     QQuickWindow::setDefaultAlphaBuffer(true);
     ...
     QGuiApplication app(argc, argv);
     QQmlApplicationEngine engine;
     ...
 }
  • Add the following code to your .qml
 import HuskarUI.Basic
 HusWindow { 
   ...
 }

Alright, you can now enjoy using HuskarUI.

🚩 Reference

💓 LICENSE

Use MIT LICENSE

🌇 Environment

Windows 11 / Ubuntu 24.04.2, Qt Version >= 6.7

🎉 Star History

Star History Chart