The Future of Add-ons

The Firefox Add-on platform is the most vibrant source of browser innovation in the world, with over 1.5 billion downloads and tens of thousands of add-ons. There’s been a lot of speculation over the past couple of days around the future of Firefox Add-ons, and how Jetpack fits into that future. There’s currently a lot of misinformation swirling about this topic and it’s making people very unhappy. We’re going to attempt to clear things up below…

WHAT IS PROJECT JETPACK?

Project Jetpack is: A library and Firefox API that provides a gradual upgrade path to better extensions. Right now, you write a Firefox extension; in the future you’ll be able to write an extension using Jetpack. If Jetpack doesn’t provide the flexibility or feature you need, you’ll be able to contribute it in true Mozilla fashion.

WILL JETPACK REPLACE XUL BASED ADD-ONS ENTIRELY?

Jetpack tries to make everything about Add-ons easier, from how they’re developed to how they’re installed and managed. If Jetpack becomes just as functional and powerful as the existing system, then we’ll talk about whether migrating all extensions to the new platform makes sense. It’s far too early to have that discussion in earnest now, and to be clear, no decision has been made about deprecating the existing system.

WHY DO WE NEED JETPACK?

Project Jetpack is an evolutionary step building on our original platform to create a stable, developer-friendly extension platform that introduces mainstream web developers to the world of browser extensions. Improved security, independence from browser versions, and no-restart installations have long been on the wish lists of add-on developers everywhere. As add-ons have exploded in popularity, so has the need to make these wishes reality With tens of thousands of add-ons that touch every part of the Firefox code-base, we feel the best way to accomplish these goals is a development framework like Jetpack.

WHAT DOES THIS MEAN FOR CURRENT ADD-ON DEVELOPERS?

It means that eventually add-on developers will have the option to use quicker and simpler APIs to build rich customizations for Firefox. It is the goal of the Jetpack team to create an extension platform that is as rich, capable and robust as the existing one, as well as to provide faster paths for common actions like adding buttons, toolbars, sidebars, overlays, web content-specific customizations and connection to binary components. Project Jetpack has to develop further before this full platform is available, but we’re moving quickly towards that target.

Developers should adopt Jetpack because they want to — not because they have to — and we’re months away from the point where Jetpack serves as a viable alternative for writing Firefox extensions.

GET INVOLVED

Jetpack is moving fast. Informed by developer feedback, we’re in the midst of the writing the third iteration of Jetpack. While there are some details here (see Jetpack Enhancement Proposal (JEP) 29 and JEP 31), we’ll be working on a set of more easily digestible blog posts and documentation in the coming days.

The formative period for Jetpack is in the future, not in the past. We hope you’ll work with us to continue to make Firefox a platform than enables choice in the experience of Firefox users and developers worldwide.

If you have more than a passing interest in the future of add-ons, consider this a rousing call to action to get involved. Learn more at:

Nick Nguyen, Aza Raskin, Atul Varma, and Daniel Buchner on behalf of the Jetpack team