Today I had my first experience with Greasemonkey. For those of you who have yet to come across it, Greasemonkey is a Firefox extension that opens up a whole new realm of client-side website personalization opportunities.
Greasemonkey enables the execution of user-written scripts against any webpage. These scripts can interact with the webpage, look-up external content, and literally perform any type of modification.
The first example I tried was Adrian Holovaty’s Chicago Transit Authority map on Google Maps. This script seamlessly adds a third option to Google Maps. Now, in addition to Map and Satellite options in the top right corner, an option for CTA map is added. With the map pointing to Chicago, clicking on CTA map replaces the existing map with the layout of the Chicago Transit tracks. Anyone going to build one for the NYC MTA?
There’s already a long list of canned scripts available from the Greasemonkey script repository. Another interesting script is Jon Udell’s Library Lookup. He modified his existing bookmarklet to rewrite Amazon book pages. Now, while browsing books at Amazon, the Greasemonkey script goes out in the background to your library’s online database and checks for availability. Awesome integration!
Now, it makes me think that I should get around to writing a Greasemonkey quickSub script. This would rewrite any links to RSS/Atom feeds so that they included the appropriate URL to enable subscription against a user’s desktop or web-based aggregator. Any interest?