Bookmarklets has been common for a long time and are quite easy to make. But one thing that you often see when examining the code behind bookmarklets are that most of the code is just to facilitate simple cross domain communication back to the whatever service the bookmarklet supports. Creating a bookmarklet with easyXDM | easyXDM
23417268 Advanced Java Script
UPDATE 1/14/2012: Added Batman.js and Angular.js due to popular demand and because they looked impressive.