Site-Specific Browsers
If you look at the continuum of software application platforms you’ll find that there is a lot of interesting stuff happening at the moment between the extremes of pure web applications and pure desktop applications. You have things like AJAX, Flash and Silverlight which are trying to bring more of the desktop app experience to the browser and then you have things like Adobe AIR that are bringing some of the web-based development models to the desktop. Somewhere in between there is this concept called the site-specific browser (SSB).
The idea behind the site-specific browser is that you have a standalone application that is dedicated to running a single web application. You can think of it as freeing your favorite web application from the browser and allowing it to run directly alongside your other desktop applications. Site-specific browsers will typically provide a very minimal UI (none of the usual browser menus, navigation buttons or tabs that you’re used to) and some basic desktop integration through things like shortcuts, presence in the taskbar/dock and custom application icons.
I’ll admit that, when I was first introduced to the concept of the site-specific browser, I didn’t really get it. Isn’t this just a new browser window with all the chrome turned-off? For the most part, the answer is probably ‘yes’ — however, I came across a demo of a very cool site-specific browser this week that caused me to spend some more time looking into the idea.
If you haven’t seen it already, take a look at this demonstration of the Fluid SSB working with Muxtape (I also encourage you to spend some time playing with Muxtape — I’ve spent a lot of time browsing the seemingly endless supply of playlists and have discovered a lot of new music in the process). The example shown in this demo is particularly compelling because it shows how to add a feature to the web application that would be incredibly difficult to do in a traditional browser.
Fluid looks like it has some really cool features but it is Mac-only and I spend most of my day sitting in front of a Windows machine. I started to look around for a site-specific browser for Windows that I could play with and came across the Prism project out of the Mozilla Labs (you can find the latest Prism build on the Prism wiki page).
If you’re anything like me, you have a tab in your browser that is dedicated completely to Google Reader. Whenever I have some downtime in my work day or am transitioning between tasks I often flip over to my Google Reader tab to see how far behind I am on my news feeds (only 188 unread items at the moment). For me, there are three applications that I always have open during the work day: 1. Outlook, 2. Pidgin, and 3. Google Reader (running in Firefox).
With Prism, I can take Google Reader out of Firefox and make it a first-class citizen on my desktop alongside Outlook and Pidgin. The following screenshot shows what Google Reader looks like running inside of Prism.

The benefits of running Google Reader in this way are arguably small but, for me, still useful:
- Eliminates all the unnecessary browser chrome. The browser’s address bar and navigation buttons really serve no purpose for Google Reader.
- Simplifies task switching. When running Firefox, the taskbar always shows the Firefox icon and the title of whichever tab has the focus at the moment (which may or may not be Google Reader). Running Google Reader in a site-specific browser means that it will be easily locatable in the alt+tab task list and the taskbar.
- Prevents accidental tab closure. When I’m in Firefox it seems that I’m constantly spawning and closing tabs and often find that I close things I didn’t intend to close. Splitting Google Reader out of the browser means that I won’t accidentally close it in the course of my browser tab management. This isn’t a huge deal for Google Reader, but if you’re using something like Muxtape where closing the tab will cause your playlist to abruptly end, it can be extremely annoying.
If you really want to customize your SSB, Prism allows you to attach a custom style sheet and javascript file to each application. The ability to specify a local style sheet means that you can override any of the CSS used in the application and re-skin it however you see fit. Anything you can’t accomplish via CSS can certainly be handled with a little custom javascript. Attaching a local javascript file gives you a GreaseMonkey-like ability to completely manipulate the DOM of the web application.
To install your your local style sheet and javascript files you simply need to create files named webapp.css and webapp.js and copy them to the directory that Prism creates for each web application. On Vista, this directory will be something like C:\User\<username>\AppData\Roaming\WebApps\<appname> (XP users will find their web application directory at C:\Documents and Settings\<username>\Application Data\WebApps\<appname>)
Having used Google Reader and GMail within Prism for a few days now, I’m definitely sold on the SSB concept and look forward to seeing what the Mozilla team does with it. If you’re a heavy user of the web-based applications like GMail, Google Reader, Twitter or Facebook you might want to give it a try and see if it works for you.

4 Responses to “Site-Specific Browsers”
Try Opera. One of my favorite features that I constantly take advantage of is locked tabs. With the several tabs open in the browser, simply right click a tab and select Lock Tab. The result is that the close button on that tab is simply disabled.
(Smaller version is pasted in so that I don’t completely brake your layout – see full size by clicking through on the picure to Flickr.)
That screencap was at http://www.flickr.com/photos/mikeperl/2615674911/. Apparently WordPress filtered it out…
For accidental closures, try out https://addons.mozilla.org/en-US/firefox/addon/2558 Perma Tabs.
Still, I like Prism. I use it for G-Mail on secondary computers (KMail on my main) and Google Reader.
Another potential use (the reason I’m interested in it now) is if you have two email ids (official, personal) on say gmail apps. It would be painful to log out and log in to check the official id.
Prism is not linked to firefox, so I can just click an icon to check the official id.
Leave a Reply