I’ve spent a considerable amount of time in the last two days writing my first Firefox add-on. I have the pleasure of working with their new SDK for add-on development: Jetpack. So far it has been a rather pleasant experience. A few times I had to ask questions on IRC because something was phrased differently than I expected so it didn’t seem like the thing I was looking for. Other than that, most things have been pretty intuitive.
I’m in the process of writing a little add-on that will sit in the bar, and when clicked will show a window of all of the user’s GitHub repositories with quick links next to them for code, issues, wiki, and home page. This has stemmed from my dislike of the 3+ page loads needed to get to the issues for a given project, which can be pretty bad on crappy cafe wireless. I considered a desktop app, but then I’d have to make it cross platform as I develop on OSX and Linux.
The source is on GitHub, unsurprisingly. It is currently a work in progress, but I have a list of issues for 1.0 and once those are all complete (and any other that come up as blockers) you’ll be able to find my add-on on the Firefox Add-ons site.
One of the parts of the process that made me really get into going with this project was their new Add-on Builder which lowered the barrier of entry incredibly. After a few hours of docs reading and fooling around with it, I ended up moving to local development. Not due to any flaw in their Add-on Builder, other than it isn’t Emacs.
I started using their command line tool cfx which also made it really to change some code, save, then run it in a clean browsing session. I was surprised how nice these tools are, they are head and shoulders above most language/framework development tools I’ve used. I look forward to using the “cfx xpi” command then publishing it to the web, just as easily as I got started. Overall I highly recommend the experience to anyone who has any desire to build a Firefox add-on.