Web apps are currently undergoing a renaissance–or perhaps they’re fulfilling the promise made when the genre was created in 1999. The technology, skills and community that go to make these web apps is beginning to turn in many different directions. We’ll soon see a number of different web app species. One I find most exciting is Deploy to Desktop. What if the same skills needed to build complex web apps could be turned to making desktop applications, starting from a simple web app in a HTML renderer window, and iterating to use native widgets, drag and drop, and full OS integration? (More about this in my App After App talk.)
We’re on the way there. Three data-points for that journey:
Apollo is Adobe’s cross-platform runtime, based on Apple’s WekKit, that lets you run HTML/CSS/AJAX apps on the desktop. It works offline, includes an API for communication between Apollo apps, and will let you write database hooks to a local or remote persistent store. The Apollo wrapper will be distributed free, like Acrobat Reader or the Flash Player (personally I think this is the wrong model–apps should be standalone, but we’ll see). Some Apollo screenshots.
Next is WebKit on Rails which is exactly what I wanted to see when I gave that talk. It makes it easy (well, easier) to take your Ruby on Rails web app, wrap it in WebKit, the Mac HTML renderer, and run it as a desktop app. See the list of existing projects for applications you can already download.
Last up is Pyro, which wraps 37signal’s Campfire browser-based live chat application and turns it into a Mac app. Features include a badged application icon (the number of unread messages are shown), drag and drop upload, scripting support and more. Someday all web apps will be available this way.