Recent News


Introduction

Lively for Qt is a JavaScript application and mashup development environment that is built on top of the Qt platform. The system runs on Mac OS X, Linux, Windows and on any mobile device for which a port of the Qt platform is available. The system can also run in any web browser using a Qt web browser plugin.

PICTURE

Background

Qt (http://qt.nokia.com/) is a mature, well-documented cross-platform application development framework and platform that has been under development since the early 1990s. Qt supports a rich set of APIs, widgets and tools that run on most commercial software platforms. While Qt is intended primarily for C++ developers, Qt API bindings are available also for developing applications in JavaScript™ and in the Java™ programming language. Interestingly, Qt libraries include a complete web browser (based on WebKit), as well as a fully functional JavaScript engine and debugger.

Trolltech, the company developing Qt, was acquired by Nokia in Spring 2008. Nokia's market share will make Qt an extremely interesting target platform for mobile applications as well.

Lively for Qt

Qt Ambassador logo Lively for Qt is a new implementation of the Sun Labs Lively Kernel in which the "kernel" parts of Lively have been replaced by functionality offered by Qt. Lively for Qt inherits most of the basic functionality (such as the implementation of widgets, layout management, core event handling and core JavaScript support) from Qt. Lively for Qt retains the exceptionally interactive nature (the "liveliness") of the Lively Kernel, e.g., by allowing the user interface and application source code to be edited on the fly. However, in Lively for Qt the development work is performed using the familiar, well-documented APIs of the Qt platform.

By utilizing JavaScript, we have made the entire underlying Qt platform fully interactive and scriptable. Applications require no binaries or explicit installation. Applications can run both inside and outside the web browser, i.e., it is possible to support "phone desktop" applications as well as browser-resident Rich Internet Applications.

Perhaps the most interesting aspect of Lively for Qt is that it demonstrates the power that arises from combining an existing, mature application framework (such as Qt) with a popular, fully dynamic programming language. With a JavaScript engine and only a few thousand lines of JavaScript code, we have turned an existing, mostly static, binary, desktop-era application framework into a highly interactive, dynamic web development and mashup creation environment.

Sample Applications

See some of our sample applications.

Videos

See the videos that demonstrate the overall behavior of the system.