[Development] Crazy Idea
Dhaivat Pandya
dhaivatpandya at gmail.com
Tue Oct 25 00:55:48 CEST 2011
So, no matter how we look at this, we obviously need:
1) FastCGI support
2) A web server that supports async
So, we might as well get cracking.
I set up a Gitorious repo here: https://gitorious.org/qtweb/qtweb
For the lack of a better name, we'll be calling it QtWeb, if you come up
with a better name that most people like, we can change it.
So, if you are interested in contributing, please tell me, so we can have an
initial set of contributors.
2011/10/22 qtnext <qtnext at gmail.com>
> Hi,
>
> I think there is to side :
> - Server Side :
> - light web server with easy bridge with Qt
> - Websocket and Qt : there is an existing websocket lib for Qt :
> http://gitorious.org/qtwebsocket
>
> - and the dream : the client side :
> - for me a QML translator to javascript : perhaps in the same GWT
> (google) do
>
>
> There is a lot of related thread in qt list, forum and there is a lot of
> library around server or client web side.
> for example : http://developer.qt.nokia.com/forums/viewthread/4347
>
> Perhaps the start is to have a list of all available lib around Qt + web,
> contact all the people around these libs, and start to have a coherent
> package ?
>
>
> Le 22/10/2011 19:11, Pau Garcia i Quiles a écrit :
>
> Hi,
>
> Have you ever used Wt?
>
> It does everything you say it's difficult.
>
>
> On Sat, Oct 22, 2011 at 7:04 PM, Dhaivat Pandya <dhaivatpandya at gmail.com>wrote:
>
>> 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)
>>>
>>
>>
>
>
> --
> Pau Garcia i Quiles
> http://www.elpauer.org
> (Due to my workload, I may need 10 days to answer)
>
>
> _______________________________________________
> Development mailing listDevelopment at qt-project.orghttp://lists.qt-project.org/mailman/listinfo/development
>
>
>
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/development
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20111024/98486f9d/attachment.html>
More information about the Development
mailing list