[Development] Crazy Idea

Dhaivat Pandya dhaivatpandya at gmail.com
Sat Oct 22 19:04:43 CEST 2011


Here's my stance on that.
If it is possible to keep the ability to write Javascript for custom UI
widgets (or, C++ that generates a custom Javascript widget), I am for this.
If not, it would very difficult to produce web apps that have some special
"pizazz".

Web development interfaces are quite different from desktop interfaces
because

   - There are a ton of different browsers, mobile, web, etc.
   - All kinds of technologies one has to fix up

Also, if that is done, all the existing code for Javascript (such as jQuery
and the likes) cannot be used, unless the cross compiled C++ can work with
existing Javascript. If that is possible (as I mentioned), I'm totally in
for this idea, but, IMO, that is a difficult thing to accomplish.

On Sat, Oct 22, 2011 at 11:16 AM, Pau Garcia i Quiles
<pgquiles at elpauer.org>wrote:

>
>
> On Sat, Oct 22, 2011 at 6:05 PM, Dhaivat Pandya <dhaivatpandya at gmail.com>wrote:
>
>> Okay, so, people do want this to happen. So, the first things we should
>> decide would be what features/ideas one would need. I say:
>>
>> Now, IMHO, if we do make it a QPA by just changing the backend, that would
>> be exactly like Wt.
>>
>
> Which is exactly what I'd like to see.
>
> I'm not asking for a web framework/library based on Qt, but for a new
> target for Qt: instead of compiling for Windows, Linux, Symbian or MeeGo, I
> would choose "cross-compile for web". The end result would be a FastCGI
> module, or a single executable which embeds its own web server (exactly like
> in Qt).
>
> Emweb has put a lot of thought into Wt, really.
>
>
> Also, even though desktop apps have been written like this for a very long
>> time, webapps (again, IMHO) are better arranged as MVC.
>>
>> 1) Templates
>> 2) MVC properly done
>> 3) Some type of scaffolding script
>> 4) The core needs to be extremely fast and async
>> 5) Database requests are shifted off to another thread, etc. This is not
>> possible (well, it is, but, not very useful) in languages such as Python,
>> PHP, Ruby since they all use green threading, which works, but, isn't quite
>> as fast.
>> 6) Crash support, if something crashes, don't give a crazy error to the
>> user, figure out where it crashed, write to logs, and the web developer uses
>> an error page. Figuring out where it crashed is mostly where the work is
>> done.
>> 7) Qt libraries are used as much as possible
>> 8) (this one needs community support to happen) Relation to scripting
>> languages, such as Javascript, Lua, etc.
>>
>> What do you think?
>>
>>
> I think there have been several projects trying that:
>
> Creole ( http://blogs.kde.org/node/3707 )
> QtWui ( http://qtwui.sourceforge.net/ )
> ...
>
> I want write once, compile everywhere. Even if that means having three
> "different" UIs (desktop, mobile, web), it would be a wonderful feature. See
> Gtk+ HTML5 backend.
>
>
>
>  2011/10/22 Pau Garcia i Quiles <pgquiles at elpauer.org>
>>
>>> Hi,
>>>
>>> IMHO a proper implementation needs to be a QPA platform.
>>>
>>> Widgets need to be "drawn" in this "web" target, like in X11, Wayland,
>>> Windows, etc. The only change would be the low level primitives are HTML +
>>> CSS + JavaScript + SVG (and maybe even images), like Wt does.
>>>
>>> Trivia: the first version of Wt used Qt instead as the backend. They
>>> moved to Boost because of licensing (Qt was not LGPL back then) and
>>> threading.
>>>
>>>
>>>
>>> On Sat, Oct 22, 2011 at 10:55 AM, <lars.knoll at nokia.com> wrote:
>>>
>>>> >From my point of view:
>>>>
>>>> Having something here would be great. I don't think it should be part of
>>>> the essential Qt modules, but as an add-on it would be a very welcome
>>>> addition :)
>>>>
>>>> Cheers,
>>>> Lars
>>>>
>>>> On 10/22/11 7:09 AM, "ext Mark Constable" <markc at renta.net> wrote:
>>>>
>>>> >On 2011-10-21 10:10 PM, Dhaivat Pandya wrote:
>>>> >> This seems like something that's way out there, and may have been
>>>> >> suggested before and rejected, but, I'm bringing it up anyway. What
>>>> >> would the Qt community think of a web framework devised around Qt?
>>>> >
>>>> >Speaking personally I'd love to see...
>>>> >
>>>> >. a web server similar to lighttpd but 100% based on Qt
>>>> >
>>>> >. a Qt5/V8 Javascript "engine" similar to NodeJS
>>>> >
>>>> >. an optional but builtin C++ FastCGI interface for the above
>>>> >
>>>> >In other words the essential tools for a Qt Server Side JavaScript
>>>> >solution, with Websocket support, so it can be as both a traditional
>>>> >webserver or a local backend to a HTML5/QML desktop system.
>>>> >
>>>> >Why another webserver when lighttpd, nginx, even apache, already exist
>>>> >as stable codebases? Because none of them allow me to build, develop
>>>> >and deploy them, and any web based projects, within QtCreator using
>>>> >CMake and Git. There is currently a complete development disconnect
>>>> >when deploying a typical HTTP based remote server within a Qt project.
>>>> >
>>>> >> Qt has all the stuff one needs to build a legitimate web framework,
>>>> >> connection to a scripting language (PySide, or any language with a
>>>> C++
>>>> >> API, such as Lua), Sql libraries, async socket libraries, XML,
>>>> >> everything. We just need some (okay, not some, a lot) of code to glue
>>>> >> this all together into a well knit package. I'll await suggestions.
>>>> >
>>>> >Wouldn't Wt provide a lot of that? http://www.webtoolkit.eu/wt
>>>> >
>>>> >_______________________________________________
>>>> >Development mailing list
>>>> >Development at qt-project.org
>>>> >http://lists.qt-project.org/mailman/listinfo/development
>>>>
>>>> _______________________________________________
>>>> Development mailing list
>>>> Development at qt-project.org
>>>> http://lists.qt-project.org/mailman/listinfo/development
>>>>
>>>
>>>
>>>
>>> --
>>> Pau Garcia i Quiles
>>> http://www.elpauer.org
>>> (Due to my workload, I may need 10 days to answer)
>>>
>>> _______________________________________________
>>> Development mailing list
>>> Development at qt-project.org
>>> http://lists.qt-project.org/mailman/listinfo/development
>>>
>>>
>>
>
>
> --
> Pau Garcia i Quiles
> http://www.elpauer.org
> (Due to my workload, I may need 10 days to answer)
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20111022/98ea4c97/attachment.html>


More information about the Development mailing list