When Google released its Chrome web browser, a lot of people (including me) loved it, but were missing Firefox like extensions, But these days are over now and Google's browser supports extensions.
So I decided to write a simple extension to see if the delay for extensions public release was for a good reason. Extensions have been present in Chrome for a while, but only in the Beta or Developer versions.
I wrote a simple extension that generates a short URL for any web page you are viewing at any tab using HubSpot's own URL shortener service, Hub.tm , you can install it on your browser by going to https://chrome.google.com/extensions/detail/jhbjofkkhbgdgpbfkppblkpgkbefafkg
It took less than an hour to write the extension, a really short time. The developer guide is very clear, and the framework is built nicely.
The framework is all JavaScript- and JSON-based, which makes things easy. You are using JavaScript to do all your logic, and using JSON for configuration and message passing between your extension code blocks.
I loved how JSON is used as a configuration format, as we already do at HubSpot in some places. In my opinion, the JSON configuration format is more readable than XML, assuming you are carefully naming keys in your JSON.
Other things I liked about the Chrome extension framework:
Nonetheless, it's not all trivial. I also have a couple of tips on speeding up your extension development learning curve:
Overall, when you are writing an extension you will feel like you are writing a simple static web application (bunch of CSS , bunch of HTML, bunch of JS code , images..etc) , and everything you will be doing is something you know you have done hundred times before (e.g manipulating the DOM of a page).
That's it. Happy Chrome Extension-ing ;)