AJAX Widget Framework

lkcl luke.leighton at googlemail.com
Mon Oct 12 19:26:31 CEST 2009

On Oct 1, 6:01 pm, Laszlo Nagy <gand... at shopzeus.com> wrote:
> I'm looking for an open source, AJAX based widget/windowing framework.
> Here is what I need:
> - end user opens up a browser, points it to a URL, logs in
> - on the server site, sits my application, creating a new session for
> each user that is logged in
> - on the server site, I create windows(frames), put widgets on them,
> write event handlers etc. Just like with wx or pygtk.
> - However, windows are created in the user's browser, and events are
> triggered by Javascript, and sent back to server through AJAX.
> - the server side would be - of course - written in Python.
> I was looking these projects:
> http://www.uize.com/http://pyjs.org/
> There are many frameworks listed here which I did not check:http://internetmindmap.com/javascript_frameworks. I have no idea which
> has Python support, and probably there are only a few that worth looking
> at. I wonder if you could tell me which are the pros and contras for
> these frameworks. If there is a comparison available on the NET,
> pointing me to the right URL would help a lot.
> The bottom line...
> My main goal is to develop enterprise class OLTP database applications.
> I'll need grid widget to display data in tabular format, and I'll use
> events heavily for data manipulation, live search, tooltips etc. I'm
> familiar with wxWidgets, pygtk and other toolkits, but not with AJAX. I
> have never used a system like that.

 pyjamas is, despite having a browser-based option, about as far
 away from "web" development as you can possibly get, with only
 the lack of access to "standard" python libraries and having to
 work with python reimplementations of math.py, re.py, time.py
 etc. being the stark reminder that you're reaallly not in kansas.

 the only thing that you have to get used to is that communication
 with the external world is done through HTTPRequest.py and,
 typically, its derivative, JSONService.py - even in the desktop
 version of pyjamas.

 but, if you're used to event-driven desktop environments such
 as wxWidgets and pygtk then the asynchronous nature of JSONService
 won't be a problem for you.

 i recommend that if you intend to develop an enterprise-style
 CRUD (create-retrieve-update-delete) application, that you take
 a look at the PureMVC-based examples:

 http://pyjs.org/examples/ search for "employeeadmin" and "timesheet".

 kees bos joined the project a few months ago, and his very first
 task that he set himself was to improve the pyjs compiler to the
 point where http://puremvc.org's python library could be used
 *unmodified* in pyjamas applications.  he then set about porting
 (and bug-fixing!) the two wxWidgets python-puremvc examples to
 use pyjamas widgets.

 these two examples should give you a big head-start on what you
 want to achieve.

 if you are stuck on "pure javascript" frameworks, however, and
 you need "widgets", then there is one that i can tentatively
 recommend (with some trepidation, due to its enooormous size):
 extjs [no don't even _think_ of trying to combine it with pyjamas]
 and the other one is qooxdoo which is veery easy and intuitive,
 and well-designed.

 i don't honestly know if qooxdoo has a grid widget, but extjs
 most certainly does (and then some).  the only issue with extjs
 is the sheer number of options and the whopping great size.

 whichever option you pick, you're basically in for quite a bit
 of learning, to get "started".  if you pick pyjamas and you
 post on the pyjamas-dev list _please_ do remember to follow
 the rules about providing full context and a worked example
 if it's a programming issue, to help save people time, ok? :)


More information about the Python-list mailing list