This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
|Original author(s)||James Tauber, Google|
|Developer(s)||Luke Leighton, Anthony C Risinger, Kees Bos|
|Initial release||March 2007|
0.8.1a / 9 May 2012
|Operating system||Windows, OS X, Linux|
|Type||Ajax framework, Desktop and Web Widget toolkit, Compiler, Widget set|
|License||Apache License 2.0|
Pyjs (formerly Pyjamas before May 2012), is a rich web application framework for developing client-side web and desktop applications in Python. The resulting applications can be run in a web browser or as standalone desktop applications.
Furthermore, on top of the DOM.py model library is an additional abstraction layer, ui.py, which provides the most useful layer to web developers: a full suite of widgets with which desktop application developers will be familiar. At present, the list of available widgets is a mixture of the complete set of widgets that were available in Google Web Toolkit 1.2, along with a few more that have been forward-ported from GWT 1.5.
The major Pyjs components include:
- Python builtin and standard emulation library
- pyjs DOM library
- Modules for manipulating the browser DOM.
- pyjs Web UI module
- A module for creating widgets as if the web browser was a desktop widget engine.
- pyjs Desktop ports
- Support for running pyjs apps as pure Python, under Trident (MSHTML), Gecko (XULRunner) or WebKit. Pyjs Desktop is conceptually close to GWT "Hosted" mode, except that the applications can be deployed live, under pyjs Desktop, rather than be used exclusively as a debugging tool.
The widget set library that comes with pyjs is so similar to PyQt and PyGTK that a port of pyjs was made to run pyjs applications on the desktop, called pyjs Desktop (formerly PyjamasDesktop before May 2012 and originally hosted separately prior to version 0.6). The project uses Webkit, XULRunner or MSHTML as the underlying technology, and it is through these browser engines that pyjs manipulates the DOM model of the application. Together pyjs and pyjs Desktop allow writing cross-platform, cross-desktop, cross-browser and cross-widget applications that run on the web and on the desktop.
- "Release 0.8.1a". 9 May 2012. Retrieved 22 July 2018.
- Infrastructure, endpoint, process changes, clarification by Lex on pyjamas-dev mailing list (May 03, 2012)
- pyjs README
- The ui Module Class Hierarchy
- DOM module
- ui module
- PyjamasDesktop history, Python Wiki
- "Pyjamas Desktop".
- Pyjamas - Python Applications for Desktop and Web, Luke Kenneth Casson Leighton (August 30, 2008)
- Coding in Pyjamas: Apps for Desktop and the Web Luke Kenneth Casson Leighton (November 7, 2008)