What is pyjs?

pyjs is a Rich Internet Application (RIA) Development Platform for both Web and Desktop. With pyjs you can write your JavaScript-powered web applications entirely in Python.

pyjs contains a Python-to-JavaScript compiler, an AJAX framework and a Widget Set API. pyjs started life as a Python port of Google Web Toolkit, the Java-to-JavaScript compiler.

What is pyjs Desktop?

pyjs Desktop allows the exact same Python web application source code to be executed as a standalone desktop application (running under Python) instead of being stuck in a Web browser.

For Free Software platforms, most Linux Distributions now come with pyjs and pyjs Desktop pre-packaged: Debian/Testing, FC13, ArchLinux and Gentoo.

For Windows, pyjs Desktop uses MSHTML. Since MSHTML comes pre-installed on Windows (as part of IE), there is very little extra to download (other than Python itself).

Why should I use pyjs?

You can write web applications in Python - a readable programming language - instead of in HTML and JavaScript, both of which become quickly unreadable for even medium-sized applications. Your application's design can benefit from encapsulating high level concepts into classes and modules (instead of trying to fit as much HTML as you can stand into one page); you can reuse - and import - classes and modules.

Also, the AJAX library takes care of all the browser interoperability issues on your behalf, leaving you free to focus on application development instead of learning all the "usual" browser incompatibilities.

Who are the developers?

Project responsibility matrix

The following table attempts to depict all duties seen in the pyjs project, and their appointed responsible project members. Note that contributions are always welcome in any area by anyone, no need to be listed here! Though, if you feel you want to take over an area, even a new one, drive it to success, make something better than it is done now, please say so on our mailing list: this list can grow!

Area Responsible Description / Comment
General infrastructure C Anthony Risinger Github management, repository care
Process automation Lex Berezhny Github processes, continuous integration
Social media Peter Bittner Twitter monitoring, general website care