[Zope] Zope and wxPython interface

Jim Washington jwashin at vt.edu
Thu Aug 13 08:53:56 EDT 2009

Lumír Jasiok wrote:
> David Bear wrote:
>> What do you gain by doing this?
>> On Wed, Aug 12, 2009 at 2:50 PM, Lumir Jasiok <lumir.jasiok at vsb.cz
>> <mailto:lumir.jasiok at vsb.cz>> wrote:
>>     Hi,
>>     I need to write an application which will be based on MVC design and
>>     will have both web interface and desktop GUI based on wxPython. It is
>>     possible to write such an application as standard Zope app and use
>>     zope.interfaces package for defining wxPython GUI as other view
>>     (I hope
>>     that it's called view, I am not sure - I am new in Zope
>>     programming)? Or
>>     am I totally wrong?
>>     Best Regards
>>     Lumir Jasiok
>>     --
>>     Lumír Jasiok
>>     VSB-TU Ostrava - Computer centre
>>     Tel: +420 59 732 3189
>>     E-mail: lumir.jasiok at vsb.cz <mailto:lumir.jasiok at vsb.cz>
>>     http://www.vsb.cz
> I want to have an application with common code for both web and
> desktop application, so data and business logic will be common and
> only thing which will be different will be a view (web page or desktop
> application GUI). So users will have choice what interface they want
> to use, data will be same.
> As programmer I want to have common code for business logic, because
> of simplicity. I don't want to have two trunks, two business logics etc.
Hi, Lumir

You might take a look at pyjamas (http://pyjs.org).  Using pyjamas, you
can have common code for business logic and also for the GUI on web and
desktop.  The main data transfer/persistence mechanism in pyjamas is
JSON-RPC, so that part of the model can be zope or anything that can do

If you like wxPython GUI code, pyjamas code is very similar, and there
are examples using PureMVC (http://puremvc.org) in the repository. 

You cannot, at present, use zope.interface to do automatic widget
generation in pyjamas. On the other hand, it is really easy to do custom
widgets and client-side display logic.  You write your widgets and their
behavior in python, not in HTML and javascript.  Styling, however, can
be done with css.

In the eight months since I first experimented with pyjamas
(http://www.mail-archive.com/zope@zope.org/msg31618.html), it has
improved substantially.  Fewer gotchas. More joy.  Worth a look.

- Jim Washington

More information about the Zope mailing list