When people started making applications available in the browser a number of interaction challenges appeared. How do you launch a web app compared to a desktop app? How do you prevent people from navigating away from your app? The Mozilla people have been hard t work with Prism - basically a customized version of Firefox, which lets you create desktop apps pre-configured to load a certain URL at startup. The desktop app is launched like any other application. Pretty sweet as the user experience becomes more consistent. You can also customize the application icon and other parameters.
I have been running the beta version of MailPlane which provides at desktop version of Gmail (using Webkit). Apart from keeping Gmail in a separate branded window it also provides standard mac shortcut keys as well as desktop integration for screenshots and other file related things. Pretty sweet.
I was interested to see if Prism could provide a similar experience. Prism is currently an early beta at version 0.8 so it isn’t fair to expect too much of it. The feature wish list looks great.
Launching prism and creating a Gmail app worked great. However, Prism currently has some issues:
- It consumes close to 100% of a CPU core on my MacBook which makes it unusable for now.
- Font size can not be adjusted (should be a parameter?).
- There is a white space at the bottom of the app screen which reduce valuable screen estate.
I would also like to see an option to map access keys to native OS keys (e.g. Prism forwards ⌘+r as alt+r to the web app). This would allow users to work with the application in a way indistinguishable from a desktop application. also, if there was a way to interact with files (drag and drop etc) à la MailPlane I could see how Prism could be the preferred choice of many application developers in the future.
Couple it with a stand alone Ruby on Rails app (by using Joyent’s Slingshot) and you have a whole new way of developing applications that work offline, online and in a coherent way with other desktop apps. The future is bright!