Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 152 lines (115 sloc) 6.554 kB
4b58185 mention pyjamas desktop
lkcl authored
1 Pyjamas
4345ffc readme formatting
Lex Berezhny authored
2 =======
04ee480 first svn add of trunk
lkcl authored
3
4b58185 mention pyjamas desktop
lkcl authored
4 Pyjamas is a port of Google Web Toolkit to Python, and thus enables
9eadcac 0.6 release
lkcl authored
5 the development of Rich Media AJAX applications in Python, with no
6 need for special browser plugins. Pyjamas contains a stand-alone
7 python-to-javascript compiler, and also a Widget Set API that looks
8 very similar to Desktop Widget Set APIs (such as PyQT4 or PyGTK2).
04ee480 first svn add of trunk
lkcl authored
9
6da96ab add section about pyjd at top of README
lkcl authored
10 Pyjamas also contains a Desktop Widget Set version, running as pure
df8f84b update README to 0.8
Luke Leighton authored
11 python, with four useable Desktop ports available. Using web browser
95aa627 updating README
lkcl authored
12 technology startlingly provides an alternative to traditional
13 Widget sets, such as PyQT4 and PyGTK2, with the advantage of having
14 full support for HTML, CSS, Plugins and other web-related features
15 already built-in. For the windows port, this can save users and
16 developers around 30mb of downloads, as MSHTML is preinstalled on
17 the Windows Operating System, as part of IE.
6da96ab add section about pyjd at top of README
lkcl authored
18
04ee480 first svn add of trunk
lkcl authored
19 For more information, see:
20
4345ffc readme formatting
Lex Berezhny authored
21 * http://pyjs.org
22 * http://pyjs.org/FAQ.html
23 * http://pyjs.org/features.html
9eadcac 0.6 release
lkcl authored
24
4345ffc readme formatting
Lex Berezhny authored
25 Known bugs: https://github.com/pyjs/pyjs/issues
8d3b7c8 update readme
lkcl authored
26
4b58185 mention pyjamas desktop
lkcl authored
27 Pyjamas-Desktop
4345ffc readme formatting
Lex Berezhny authored
28 ===============
4b58185 mention pyjamas desktop
lkcl authored
29
95aa627 updating README
lkcl authored
30 Pyjamas runs your python application in a Web Browser (as javascript).
58b0fea update README
lkcl authored
31 Pyjamas-Desktop runs exactly the same python application on the
95aa627 updating README
lkcl authored
32 Desktop (as pure python).
4b58185 mention pyjamas desktop
lkcl authored
33
34 http://pyjd.org
d096147 add pyjamas setup.py
lkcl authored
35
9fb44d4 preparing for 0.7~pre1 release
lkcl authored
36 Release 0.6 of Pyjamas incorporated Pyjamas-Desktop directly into
a2644a5 update for a 0.6~pre3 release
lkcl authored
37 the Pyjamas Distribution. To use Pyjamas-Desktop there are three choices,
9eadcac 0.6 release
lkcl authored
38 with more planned [MacOSX PyObjC; KDE's PyKHTML].
85db82c update README and INSTALL.txt
lkcl authored
39
9fb44d4 preparing for 0.7~pre1 release
lkcl authored
40 All ports of Pyjamas-Desktop will require a JSON library to be
41 installed: as there are plenty already, it is counter-productive
8c7cbc5 update to 0.8.1 alpha
Luke Leighton authored
42 to write yet another one. simplejson is recommended if the version of
43 python is 2.5 or less. Python 2.6 and above come with a json library
44 installed by default.
9fb44d4 preparing for 0.7~pre1 release
lkcl authored
45
4345ffc readme formatting
Lex Berezhny authored
46 1. XULRunner
85db82c update README and INSTALL.txt
lkcl authored
47
4345ffc readme formatting
Lex Berezhny authored
48 install hulahop and python-xpcom. hulahop, from OLPC SugarLabs,
49 is distributed with both Debian and Ubuntu; python-xpcom is part
50 of XULRunner and is also distributed with both Debian and Ubuntu.
51 Other users should investigate the installation instructions for
52 python-xpcom and hulahop for the operating system of their choice
53 on the appropriate web sites.
85db82c update README and INSTALL.txt
lkcl authored
54
4345ffc readme formatting
Lex Berezhny authored
55 Sadly, modifications made by the Mozilla team to the xulrunner API
56 have not propagated through to python-xpcom due to lack of attention
57 and support by the Mozilla team. Older versions of XULRunner must be
58 used: versions 1.9.0 or 1.9.1 are known to be suitable, as is version
59 9.0. Versions 10 and above are known to segfault. The Mozilla
60 Foundation is NOT paying attention to the stability of xulrunner for
61 embedded purposes: many applications (not just pyjamas-desktop) are
62 now being left without working, stable code.
df8f84b update README to 0.8
Luke Leighton authored
63
4345ffc readme formatting
Lex Berezhny authored
64 2. PyWebKitGtk
85db82c update README and INSTALL.txt
lkcl authored
65
4345ffc readme formatting
Lex Berezhny authored
66 There are two versions of PyWebKitGTK: please do not use the older
67 version which has been "taken over" by the Webkit team: the Webkit
68 team have decided that full support of and direct-equivalent
69 interoperability with the full W3C HTML specifications is not important.
85db82c update README and INSTALL.txt
lkcl authored
70
4345ffc readme formatting
Lex Berezhny authored
71 The version of pywebkitgtk at http://www.gnu.org/software/pythonwebkit
72 provides full and direct python-equivalent interoperability for all functions
73 for which access through javascript has been provided: thus, Pyjamas
74 Desktop will function correctly.
85db82c update README and INSTALL.txt
lkcl authored
75
4345ffc readme formatting
Lex Berezhny authored
76 PyWebkitGtk must be explicitly enabled. create a $HOME/.pyjd/pyjdrc file
77 containing the following two lines:
85db82c update README and INSTALL.txt
lkcl authored
78
4345ffc readme formatting
Lex Berezhny authored
79 [gui]
80 engine=pywebkitgtk
df8f84b update README to 0.8
Luke Leighton authored
81
4345ffc readme formatting
Lex Berezhny authored
82 3. PyWebkitDFB
df8f84b update README to 0.8
Luke Leighton authored
83
4345ffc readme formatting
Lex Berezhny authored
84 This is an experimental but minimally functional engine that is extremely
85 quick to start up. The build dependencies are also drastically smaller than
86 any of the other web browser engines (which indirectly contributes to the
87 fast startup time).
df8f84b update README to 0.8
Luke Leighton authored
88
4345ffc readme formatting
Lex Berezhny authored
89 HTML5 is fully supported, with the exception of Video and Canvas; also
90 missing at present is support for Frames. Despite the present limitations,
91 PyWebkitDFB is highly suited to embedded systems, as well as being useable
92 as an excellent and ultra-quick general-purpose web browser engine.
df8f84b update README to 0.8
Luke Leighton authored
93
4345ffc readme formatting
Lex Berezhny authored
94 PyWebkitDFB must be explicitly enabled. create a $HOME/.pyjd/pyjdrc file
95 containing the following two lines:
df8f84b update README to 0.8
Luke Leighton authored
96
4345ffc readme formatting
Lex Berezhny authored
97 [gui]
98 engine=pywebkitdfb
df8f84b update README to 0.8
Luke Leighton authored
99
4345ffc readme formatting
Lex Berezhny authored
100 4. MSHTML
a2644a5 update for a 0.6~pre3 release
lkcl authored
101
4345ffc readme formatting
Lex Berezhny authored
102 For Windows users, all that's required, other than installing python
103 and Internet Explorer, is one further tiny package: Win32 "comtypes".
a2644a5 update for a 0.6~pre3 release
lkcl authored
104
4345ffc readme formatting
Lex Berezhny authored
105 Win32 "comtypes" can be downloaded here:
106 * http://sourceforge.net/projects/comtypes/
a2644a5 update for a 0.6~pre3 release
lkcl authored
107
4345ffc readme formatting
Lex Berezhny authored
108 Unlike the other ports, which can comprise a whopping great bundle
109 of anything up to 30mb in size, the MSHTML port literally requires
110 nothing more than comtypes, thanks to the far-sighted design of the
111 MSHTML Trident Engine and its extensive COM interface.
9eadcac 0.6 release
lkcl authored
112
4345ffc readme formatting
Lex Berezhny authored
113 5. PyQt4
f9b835b add thomas hennings PyQT4 Pyjamas Desktop engine
Luke Kenneth Casson Leighton authored
114
4345ffc readme formatting
Lex Berezhny authored
115 Kindly contributed by Thomas Henning, the PyQT4 port requires a current
116 PyQt-snapshot with Qt 4.6 (which includes QWebElement, a DOM-like API for
117 WebKit).
f9b835b add thomas hennings PyQT4 Pyjamas Desktop engine
Luke Kenneth Casson Leighton authored
118
4345ffc readme formatting
Lex Berezhny authored
119 The PyQt4 engine is highly experimental, and requires a configuration file
120 to explicitly enable it. create a $HOME/.pyjd/pyjdrc file containing the
121 following two lines:
f9b835b add thomas hennings PyQT4 Pyjamas Desktop engine
Luke Kenneth Casson Leighton authored
122
4345ffc readme formatting
Lex Berezhny authored
123 [gui]
124 engine=pyqt4
f9b835b add thomas hennings PyQT4 Pyjamas Desktop engine
Luke Kenneth Casson Leighton authored
125
4345ffc readme formatting
Lex Berezhny authored
126 Sadly, the PyQT4 port serves more as a demonstration of how never to access
127 web browser DOM functionality from python (ever). The reason is simple:
128 to access all but about 1% of the available DOM functionality, javascript
129 code snippets must be created on-the-fly and executed, and all incoming and
130 outgoing data must be dynamically translated between python and javascript
131 (as Qt4 objects).
df8f84b update README to 0.8
Luke Leighton authored
132
4345ffc readme formatting
Lex Berezhny authored
133 Aside from providing truly dreadful performance, this technical approach
134 should have you either in hysterics, throwing up or requiring counselling,
135 depending on your resilience and constitution. All is not lost: if funding
136 is made available, the PythonWebkit project can, with very little actual
137 coding required, be ported to Qt4, as the GNU PythonWebkit Project has been
138 designed to provide python access to DOM functionality, independent of the
139 actual GUI display engine being used.
df8f84b update README to 0.8
Luke Leighton authored
140
4345ffc readme formatting
Lex Berezhny authored
141 6. PyKDE
df8f84b update README to 0.8
Luke Leighton authored
142
4345ffc readme formatting
Lex Berezhny authored
143 The PyKDE engine has been done as a "thank you" to the KDE Team, without
144 whom Webkit would not exist. Sadly, though, for technical reasons, the PyKDE
145 engine requires that the entire KHTML Part be compiled with c++ "rtti" enabled,
146 and the majority of GNU/Linux Distributions explicitly disable RTTI due to
147 it having an impact on performance.
148
149 If this is ever fixed, then out of sheer nostalgia and bloody-mindedness, the
150 PyKDE engine will have continued support, even though the KHTML engine is only
151 DOM TR2 compliant (at present).
Something went wrong with that request. Please try again.