KDE Review: Union and cxx-rust-cssparser

Arjen Hiemstra ahiemstra at quantumproductions.info
Thu Feb 26 10:07:28 GMT 2026


Hello all,

I'd like to start the review process for two projects, Union and its 
dependency cxx-rust-cssparser. The relevant review issues are https://
invent.kde.org/plasma/union/-/issues/115 for Union and https://invent.kde.org/
libraries/cxx-rust-cssparser/-/issues/3 for cxx-rust-cssparser.

Union is a new style engine that intends to unify styling between the various 
styling implementations we currently have, covering both QtQuick and 
QtWidgets. It uses CSS as input format, though it is designed to allow 
multiple input formats. The CSS input is powered by cxx-rust-cssparser which 
is a thin C++ wrapper around a rust-based CSS parser built upon the rust 
"cssparser" crate.

The current state is that we have a near-complete implementation of a QtQuick 
style, along with a fairly complete implementation of Breeze in CSS. There is 
also Kirigami integration on the QtQuick side. The QtWidgets side is still 
rather limited, we can only style buttons at the moment. There will be more 
progress there once we're finished with the QtQuick side.

The plan is to release Union along with Plasma 6.7, at the very least as a 
"tech preview", but hopefully in such a state that we can start replacing our 
other QtQuick styles. After a few releases I hope to make it a framework that 
replaces all our styles, including the QtWidgets side.

To get to that state we'll need more testing however. If you want to help 
test, running a QtQuick application with `QT_QUICK_STYLE=org.kde.union` after 
building should run it with Union's QtQuick style. If you find any issues, do 
let us know.

- Arjen




More information about the kde-core-devel mailing list