In my last role we were using QML as a prototyping tool for interfaces, and basically making whole proof-of-concept apps in it. It is immensely powerful once you get the hang of it. Though if anyone is thinking about it, please note that it is not (or wasn't) really a language on its own. It's meant as a UI complement for Qt, and trying to build stuff exclusively in QML is a recipe for tears.
Can you elaborate on “recipe for tears”?
Button {
text: "Save"
enabled: textField.text.length > 0 // this is reactive to the value of a TextField
onClicked: Backend.save()
}
as soon as you try to for example implement the save method in JS/QML this starts to become very painful as it often ends up with a lot of spaghetti code. The very cool thing with QML is that the save function can be simply implemented in C++ like this. Backend::save()
{
// call QFile/QNetworkRequest/...
}
It force the programmer to split their logic from the UI layer which I don't consider a bad thing.