HP launched TouchPad, a tabled based on webOS 3.0, on July 1st. webOS 3.0 has a completely new application framework that generates web applications that can run in any WebKit browser.
HP entered the tablet market with HP TouchPad on July 1st, a year after purchasing Palm along with webOS, the Linux-based operating system that powers it. In the same time they made available webOS SDK and PDK 3.0, a set of tools for developers interested in writing applications for HP TouchPad.
HP prepared webOS 3.0 for tablets (TouchPad has 1024 x 768 pixels) but support for smartphones and other form factors will follow. HP replaced the Mojo application framework with Enyo, a framework that is fully prepared for the web. Developers use the SDK to write JavaScript applications that are later converted into HTML that can run into a WebKit browser window, be it the webOS browser or a WebKit desktop browser such as Google Chrome or Apple Safari.
For those not happy with JavaScript development the PDK (Plug-in Development Kit) offers the option to create C/C++ applications that are converted into browser plug-ins, or even JavaScript-C/C++ hybrid applications, the final result remaining in the domain of web applications. The PDK includes a GCC compiler, Simple DirectMedia Library (SDL) and OpenGL library for additional support for multimedia and games.
Enyo consists of a number of UI controls and utilities that resemble a DOM node and are actually converted into one upon processing. This is how a control looks like:
enyo.create({ nodeTag: "span", className: "a-css-class", style: "color: purple;", content: "Hello World" }).renderInto(document.body);
And this is the resulting HTML:
<span id="control" class="a-css-class" style="color: purple;">Hello World</span>
Legacy Mojo applications are supported by webOS 3.0 through compatibility mode, but developers need to use earlier emulator images because SDK 3 supports only the TouchPad emulator. As a side note, the emulator runs on VirtualBox, a virtualization product from Oracle.
Development with SDK can be done on Windows, Mac OS X and Linux, while PDK is integrated with Visual Studio on Win and Xcode on Mac, but it is not supported on Linux.