Imago Gallery running on Adobe AIR now

Last Update: 30.12.2007. By azarai in Javascript | imago

Imago runs on Adobe AIR now. You can now enjoy your galleries offline, too. If your impatient check out the screenshot and download ImagoOnAIR alpha version and the Adobe AIR runtime, if you don’t have it already installed.

ImagoOnAIR Screenshot

What’s Adobe AIR?

Adobe AIR is a runtime environment that lets you build desktop applications using Flash, Flex or plain HTML/Javascript. It runs on both Windows and OSX. Linux support will follow after Version 1.0 is released.

How to get started?

To build AIR applications you need 2 things to get started:

You might download the documentation and some of the examples too. Its pretty straight forward, at least for the Javascript/HTML apps. I recommend to take a look at the examples and read this nice tutorial over at 24ways. That should you get started as i’ll focus more on my experiene of porting an existing Javascript/HMTL App to AIR.

How difficult was it to let Imago run under AIR?

For the first basic tests there was no need of changes at all. To my surprise. I expected some problems or code changes because of the XMLHttpRequest usage. But it worked and the AIR frameworks looked up the file on the file system. Nice. The only drawback is the way of air deployment. It didn’t fit my idea of how to distribute the app first. I thought the air file would be some kind of executable and could be placed inside a gallery directory. But it isn’t, its an installer file and the app gets really installed on the os. You should remember this when developing your own app!

With this knowledge i decided that Imago should act more like an app and adjust to the framework. Reading local files and loading a galery.xml and the whole gallery was straight forward, again. But i had to adjust the Imago loading mechanism a bit to run under the AIR Security model, i.e. the use of eval after loading the app is restricted. Otherwise this was the only real change caused by the air framework. All other changes were related to the migration from a “see it on one web site app” to a full desktop variante.

Conclusion

AIR is a nice piece of technology and its a simple way for bringing webapps to the desktop. For the app it behaves like a browser with additional access to the local machine. No worries about installation and deployment issues. And the one time footprint of a ~11MB download for the runtime is IMHO ok. Sure if you just want to run Imago or another small app, you get alot of overhead as with almost all frameworks or runtime environments. Buts that pretty normal developer choice.

For now i wouldn’t code a bigger Javascript/HTML project with AIR as the debugging is bad. Theres no debugger and you have to relay on simple trace prints. And no hot deplyoment. I had to restart the app everytime i made a change to the script. Hopefully they add it later as i think the runtime has some potential. Then again its just beta3 :-)