Build Cross-Platform Apps For Both iOS And OSX With Chameleon Framework

Chameleon is development framework for OSX the non-programmers to web mapping application using MapServer easily. Chameleon works as a drop-in replacement for UIkit; the basic tool you need to implement graphical, event-driven app in iOS framework.

Sean Heber and Craig Hockenberry built the Chameleon framework, an open source project. Both are senior developers from the software company Iconfactory, they developed Twitteriffic app for both iOS and OSX. Now they have created Chameleon to aid their own port of Twitteriffic from iOS to OSX.

The project site states that it is possible to port some applications from iOS to OSX, and no change is required in code. Chameleon however can still provide users a desktop OS experience instead of a multi touch experience. How to translate the multi touch experience into a traditional desktop experience? To do so, Chameleon incorporates the standard OSX AppKit framework and transitions between UIKit and AppKit depending on the context. For example, for text entry on OSX Chameleon will use AppKit instead of bringing up an on-screen keyboard.

“Prior to the creation of Chameleon, we were looking at only being able to re-use about 25-30% of our code from iOS in the Mac version,” the site says. “By porting UIKit instead of the individual view and controller classes, we were able to re-use 90% of our iOS code.”

“Our approach with Chameleon was to use native AppKit constructs in the context of UIKit,” the site says. “The glue that holds these two frameworks together is Core Animation.”

The creators of Chameleon are selling Chameleon t-shirts for $250 to fun this open source project, as many open source projects are funded by subsidiary services or products. One may argue that a Chameleon T-shirt can be produced at cost less than $250, but it’s also no secret that this source code is potentially worth much more than $250 to your software development business. So in my view, everyone should support Chameleon as this project benefits everyone.

Developers have expressed some doubt over whether Chameleon’s upright user experience on OSX, and translation from one platform to another. Time will better answer the scepticism. Chameleon can be downloaded from Github.