Qt & QML on standard web browser

  • Hi there!

    I know this topic has been discussed before, and that there are a few projects out there that did not evolve further than the proof of concept level. Why don't Digia start a web port of Qt?

    One reason I think is that Qt is a VERY big library to be ported as a whole (as been attempted here: https://qt.gitorious.org/qt/emscripten-qt and seems to be an abandoned project, as there's no activity since 2014 Q1), another reason could be many (C++) developers do not understand the horrible development landscape on the web.. JS..

    Think of that: There is no single WebGL accelerated GUI framework for the web! (only game engines, without any serious UI support) Nothing anywhere near QML.. So, why is there still no QML js interpreter?

    Actually there were a few promising starts in 2013/2011. Here: https://gitorious.org/qmlweb, and here: https://gitorious.org/porting-qt-qml-to-web

    Unfortunately these projects were abandoned, and in my opinion, Digia should spend their RND budget on the WEB first! There's a big whole in web development that could be filled by such a project, and let me further explain:

    1. Mobile JS UI libraries like Sencha Touch, jQuery Mobile, Kendo, .. and there rest of them are all based on slow as hell HTML rendering on mobile and even on none mobile devices. QML may need some slowish (depending on the implementation) translation to JS, but the end result runs on WebGL which is fast (as done in QMLWEB)
    2. QML was added native UI controls, which may just run faster than their native platform original UI, since QML uses the GPU. Again, fabulous!
    3. There is already a number of a promising projects that can be adopted.

    Why not yesterday?

  • Do you mean something like this:


  • Yup, I did refer to this project.

    A great start, but seems to be abandoned.. (budget?)

  • It's still in active development, you can contribute here:


  • Great to see that this project is not abandoned! But I do think this kind of project should be funded, and a web port should (have been already?) a part of the mainstream ports just like windows, android ...

    QML has the missing simplicity/UI/speed/elegance. The web has the users and the powerful browsers to run QML. It's just.. a small step that is required to get me out of the horrible Ext.js coding I am doing now.. HTML UI is shitty, even after you get used to it.. and then you run it on a mobile tablet and it takes it 20 seconds just to load, and it runs slow slow slow... The web NEEDS UI based on the GPU.. it just needs it. If the need is provided, many people will follow ..

  • Hi rubizm,

    I agree 100% to your request. I'm a Qt user for more than 4 years now, this is an amazing framework which is now targeting mobile devices (it was not the case when I started). As a commercial licensee, Digia often asks customers what we need for future and now I always answer "web target". I tried some solution a few years ago as QtBrowserPlugin (http://doc.qt.digia.com/solutions/4/qtbrowserplugin/developingplugins.html) which works fine on some browsers but not all and is really difficult to deploy. Tried also Qt for NACL (http://qt-project.org/wiki/Qt_for_Google_Native_Client) but never succeed to make it work, but not try hard since it works only for google chrome and not on windows.
    I tried QMLWEB 6 months ago and it is really promising but I agree that it should be funded by digia to be incorporated in the framework and become official as it was the case for necessitas which became android port of Qt. It seems today to be the best solution for "qt on web" even if I would prefer an entire port, not only restricted to QML (C++ is often useful and faster in some points than QML). On another side, I think that QML is really perfect for Web design.

    Hoping Digia and community will listen to us ;o)

  • Hi Oliver,

    Sure Qt C++ translated to NaCL (chrome) or Emscripten (Firefox and the rest) would be great. And actually there is a working example of such work done here: https://qt.gitorious.org/qt/emscripten-qt
    BUT .. this is a big project to convert whole QT, and the bigger need, as I see it is for a JS framework, which may not have any system specific API code (at start), but would have: 1) great speed 2) much rapid development 3) great design, especially compared with HTML 4) Standard Native looking UI which is just not available in other webgl/canvas platforms...

    And that is why QML just fits in to that spot. With considerably small amount of work, as there's already work going on (KDE project).

  • Hi rubizm,

    Totally agree with you, QMLWeb is really the best way to do it and for the c++ part the new 5.4 module QtWebChannel must give an interesting solution at server point http://www.kdab.com/qt-webchannel-bridging-gap-cqml-web/

  • qt-webchannel and qt-engine both are very good on the server aspect. But the web needs webgl UI, and that is exactly what QML does (in a hosted web engine). One could only imagine how cool it would be to have it running in the browser..

  • Hey folks,

    I started another approach: Writing a browser who can natively understand QML, too:

    It's just for the lols, but hey, it's fun :)

  • noticed this branch while googling something related. thought id mention that the webqml project is getting a boost and we are currently merging the many branches that have been floating around the last year.
    feel free to help out!

Log in to reply