My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Links

RCTK (Remote Control Toolkit) is a (Python based) desktop-like UI toolkit providing standard widgets such as buttons, labels, frames and layout managers. However, in stead of using traditional libraries such as gtk, wxWidgets, Cocoa for drawing the UI controls it uses a web browser as a "remote display" for rendering the interface.

RCTK works with python 2.x (2.4-2.7 tested) and python 3 (python 3.1 tested), making it one of the very few Desktop UI and web toolkits that supports Python 3!

This allows you to write applications using a "tradtional" desktop-like UI approach: statefull applications, with mainloop, native events, integration with existing modules, and so on, in standard Python. In stead of running it on your local desktop you can access it remotely through a web browser. Unlike "traditional" web frameworks, there's no distinct separation between client and server.

Finally, you don't need to code any HTML, CSS or Javascript to build feature-rich applications using RCTK.

RCTK consists of three parts: The browser UI library called "Onion", a Python based toolkit called "Spruit" which provides the API and a simple protocol in between. This means that, currently, Python is the only supported language. Implementing the toolkit for other languages should be possible.

RCTK supports two different frontend toolkits: JQuery and Qooxdoo This should make the toolkit somewhat browser independent but Firefox and Chrome are, at this moment, the main development/testing platforms.

RCTK is currently still in a prototype stage. Most of its architecture, API, functionality still needs to be built and the parts that have been built will probably change drastically.

A demo with code can be found at http://qx.demo.rctk.org/ (Qooxdoo frontend) and http://jquery.demo.rctk.org (JQuery). Other demo's can be found here. You will probably need Firefox to run the demo's successfully.

If you want to dive into the code, check the GettingStarted documentation. Some use cases are described in UseCases. Please read the about page if you need more explanation on what RCTK does and how it works.

There's a low-traffic general purpose discussion and announcement mailinglist and an svn commit mailing list.

Powered by Google Project Hosting