Fluid: Simply brilliant
Posted by Pierre Igot in: MacintoshJanuary 9th, 2008 • 5:28 pm
What a great find!
For years now, I have been using specific sites for my translation work that give me access to various terminology databases. For years, I have been accessing these web sites with my web browser of choice, i.e. Safari.
And for years, I have had to endure the occasional Safari crash while browsing various other web sites for unrelated purposes, which would bring down all currently loaded web sites, including these web sites that I use for my work.
Since some of these web sites that I use for my work require authentication, it is a bit of a pain, each time Safari crashes, to have to go back to the site’s login page and go through the login process manually for each site.
More generally, even when the sites do not require authentication, it’s a bit of a pain to have to reload them in the event of a web browser crash involving another totally unrelated web site.
Now, Safari has improved steadily over the years, and now has a feature that enables you to automatically reload all the sites that were loaded before the application crashed. But this feature is not really a solution either, because it reloads all web sites, which can take a while, especially on a slower Internet connection, and besides, those sites that require a login don’t work with a reload and you have to go through the login page again anyway.
Essentially, the problem is that web browsing in Mac OS X, like most other computing tasks, is still an application-centric process—whereas using these particular web sites is, as far as I am concerned, more or less equivalent to using a stand-alone “application” or tool.
There is no obvious way to launch multiple distinct instances of a single application such as Safari in Mac OS X. The only obvious option for me until now was to use another browser application for the web sites in question, so that, when Safari crashed, the other browser application wouldn’t crash at the same time and these other sites would remain loaded.
The problem I had with this approach is that several of the sites that I am talking about are not always rendered properly in these other browsers or, even when they are rendered properly in these other browsers, there are interface quirks in the web browser in question that always lead me to switch back to Safari eventually.
For example, one of my main terminology sites, the TERMIUM database, has visual glitches in Camino. In addition, each time you switch to another application and back to the Camino page with the TERMIUM database, the focus looks like it is still on the input text field for entering your search request, but if you start typing, Camino beeps, and you have to grab the mouse and click on the field first. It’s obviously a bug in Camino’s rendering engine, but who knows how many years it’ll take to get fixed, if it ever does get fixed.
Fortunately, thanks to Macintouch.com, I have now discovered a utility that is the perfect answer to this long-standing issue. The utility is called Fluid and it allows you to create stand-alone applications that are in effect single-window browsers for specific web sites.
The stand-alone applications are based on the same rendering engine as Safari, since they use the WebKit architecture in Mac OS X, and they make full use of the same cookies, keychain information, etc. as Safari. So effectively what Fluid does is that it lets you create numerous little Safari-like applications, one for each web site that you want to use as a stand-alone application. If Safari crashes, it has absolutely no effect on those applications. They work as independent Mac OS X processes.
All you have to do is launch Fluid and then specify the URL for the desired web site and specify a name and an icon for the application. (You can use the favicon from the site, although obviously this will look horrible in Mac OS X, since favicons are not scalable and are only meant to be displayed at a tiny size.) Then Fluid loads information from the web site and creates a stand-alone application.
You then launch the application and it automatically loads the desired site in a simple Mac OS X window with no visible toolbar (although you can expand the hidden toolbar to access some basic web-browsing controls). If the site in question requires authentication, that’s not a problem. You just specify the URL for the login page when building the application, and then you can log in within the stand-alone application just as you would if you were visiting the site in Safari.
Here’s a screen shot of the stand-alone TERMIUM application that I created, in the foreground window, and the same TERMIUM site in a Safari window in the background:
The two sites are, of course, identical, and using TERMIUM in the stand-alone TERMIUM application that I created works just as well as it did within Safari.
The only difference is that, well, if Safari crashes now, TERMIUM will stay open!
This is just terrific, and I can create as many separate single-site browsers as I desire. And there is more:
Fluid 0.6 includes optional tabbed browsing, browsing history, optional browsing to urls outside the SSB [Site-Specific Browser] “home” domain, RSS/Atom Feed detection, Dock badges and Dock menus for Gmail, Google Reader, Facebook, Flickr, and Yahoo! Mail, auto-software updates via the Sparkle Update framework, custom SSB installation paths, and custom SSB icons.
The great thing about Fluid is that, unlike similar third-party products such as Prism, it is based on Safari’s WebKit engine, and feels perfectly at home in Mac OS X. I personally can’t stand the UI in a Mozilla product such as Firefox. (Camino is… tolerable.)
Right now, Fluid is in beta and the beta expires at the end of March 2008. There is no information about what it will eventually cost, but as long as it’s priced reasonably, I’ll be one of the first to buy!
January 9th, 2008 at Jan 09, 08 | 6:19 pm
Completely unrelated to the main topic but as you mention dictionaries: With X.5’s dictionary accepting plugins wouldn’t it be cool for you to have that connect straight to your online dictionary services? If it works for Wikipedia it should work for other sites as well.
January 9th, 2008 at Jan 09, 08 | 7:21 pm
That’s wonderful. I’ve been using a few one-off browsers (Gmail Browser & Gcal.app), and I’ve tried bending Prism to my needs, but this is a massive improvement. Thanks for pointing it out!
January 9th, 2008 at Jan 09, 08 | 8:54 pm
It’s great that someone finally put something like this together for non-developers! It’s actually really easy to create one-off browser apps in Xcode, just load the Minibrowser example, change the default URL, delete the window controls if you want, and boom. Michael McCracken posted something like this on his blog. But all that is still too involved for most people. This is really good.
January 10th, 2008 at Jan 10, 08 | 6:03 pm
ssp: I somehow doubt that fully integrated third-party online dictionary services will ever happen, because of a number of issues, starting with authentication. The services I am using are not free, and access is restricted (via authentication) to paying customers. Of course, each service uses its own form of authentication. And then each service uses its own user interface to access the content. Some of the interface are based on universal and open web standards, but not all of them, and even assuming that authentication issues could be solved, Mac OS X would have to be very flexible to accommodate a variety of database query formats from providers who do not care much about supporting Mac users in the first place.
So for now Fluid-created stand-alone applications are definitely the way to go!
January 11th, 2008 at Jan 11, 08 | 12:23 am
Oh good, tabbed browsing! Now I can use Fluid to access all my web apps in one convenient Mac app.
;)