I stumbled across a framework called
Sidewinder today, designed to bridge the integration gap between web apps and the desktop, making web apps behaving more like traditional apps.
I suspect its still in its development stages, as all the documentation seems to be focused on the programming side of things; there isn't a consumer facing website AFAIK.
From the site:
The easiest way to use Sidewinder is as a standalone desktop web applications viewer. A desktop web application--or what we often call an internet-facing desktop application--is
simply an XHTML document that is running in a purpose-built container,
rather than a standard web browser. Running web applications in this
way is useful since it allows us to interact with the application as
something distinct from our browsing experience.
For example, say we have a simple web page that tells us when the
next train home is; we could open this page in our web browser and look
at it periodically for updates, but why not take the same web page and
dock it to the side of the screen, and make it automatically hide when
we're not looking at it? This is the kind of functionality we would
expect from a desktop application, and by using Sidewinder, it's now
the kind of functionality we can use with our web applications.
Essentially, its a XHTML-powered framework that allows web app developers to break their web app outside of the browser, making it look and feel like a normal app or like a widget depending on the settings. The idea's not to get rid of the web app - the web apps' still there and accessible anywhere; the idea is to make the web app part of the user's desktop instead of some far-away browser-boxed service. There's some examples on how to get a search box working with flickr, as well as examples involving Google Calendar and Technorati mini.
It requires a two downloads before you can use it (one for the
formsPlayer to process the XForms, and
Sidewinder Viewer to show them), but the desktop web application bits for each web app can be downloaded from the net each time so they're always up to date. You can also launch them directly from your web app by downloading the .webapp file. So by downloading them locally, any user could launch your web app in its own dedicated window from a desktop shortcut.
For example,
Remember the Milk could have one that users store on their computers, and when they need to add an item to their todo list, press a keyboard combination and voila a small dialog slides out for you to add an item. Or maybe they could make one that docks and hides on the right side of the users screen, listing all the users todo items, visible at any time, with or without the browser open.
Twitter could do something similar - have a small app callable up on demand to update their status.
Google's docs and spreadsheets could load up in their own window, making it feel more like a traditional desktop app rather than a browser-limited web app (which it is). There's an example on the site that loads Google Calendar and docks and hides it at the right side of your screen, so all you have to do is move your mouse over to the right side and it'll show.
The possibilities are endless, and are much more flexible than the widget engines that currently exist.
It could and should integrate with the desktop more though, e.g the ability to attach it to an item in the Send To menu, set it as a handler for a file extension, login automatically, but its a step forward. I don't know of any web apps that support this officially, but it should definitely be considered I reckon (hopefully by then there'll be a consumer-facing page for Sidewinder with various links to supporting web apps and mashups, as well as a nice Sidewinder logo and badge for web apps supporting it). Adobe's to-be-released
Apollo platform will contend with this, but for AJAX developers, this is a lot easier to work with given the languages involved. This will have to conquer the quite formidable Flash player penetration though...

Pics above from
Sidewinder site