Cappuccino and Titanium for Building Desktop Apps
Just discovered how easy it is to get a desktop app off the ground with Cappuccino and Titanium frameworks. 280North, the developers behind Cappuccino, have already created a beta of Atlas that enables you to distribute a Cappuccino application for the desktop. Atlas is fabulous, but it renders the interface using its own skin and not the native Cocoa window. Windows, therefore, aren’t bounded to the screen’s edges and resize fairly clumsily.
Titanium provides a useful platform for not only building desktop apps that are more consistent with the operating system’s UI, but also allows for cross-platform distribution to Mac, Windows, Linux, and even the major mobile platforms like iOS and Android. Because Titanium caters to web developers, it makes sense to combine the powers of Cappuccino and Titanium to leverage the strengths of both frameworks. Cappuccino ports sleek Cocoa concepts to its own JavaScript superclasses (Objective-J), making it possible to develop powerful web applications with the same feel and consistency as desktop applications. It has already succeeded well at bringing the powers of the desktop to the web browser; for one example, check out 280North’s 280 Slides application. (It’s essentially Keynote in the web browser.)
Combining the two frameworks was a simple two-step process. First, I got a Titanium desktop application project started. Second, I placed the contents of the main Cappuccino project into the Resources directory in the Titanium project directory, replacing the index.html file that comes with Titanium with the one used by Cappuccino. That was it. Now I can proceed to apply Titanium goodness where I like and base most of the application in Cappuccino. At this point, I’ll have to test for conflicts between the Titanium SDK and Objective-J, but so far, it’s been smooth as butter.

