- Change the appearance or content of particular websites
- Modify the Firefox user interface
- Add new features to Firefox
There are currently several toolsets for developing Firefox add-ons, but WebExtensions will become the standard by the end of 2017. The rest are expected to be deprecated over the same period of time.
Here you will find information about available options for developing add-ons, so you can make a decision on what’s best for you right now and in the future.
Create a New Add-on
If you are writing a new add-on, we recommend you choose one of the following two methods. Until the transition to WebExtensions is complete, there will be pros and cons to each method. Please read through the options to decide which works best for you.
WebExtensions are the future of Firefox add-ons.
They are designed to be cross-browser compatible: WebExtensions written for Firefox will in most cases run in Chrome, Edge, and Opera with few if any changes. They are also fully compatible with multiprocess Firefox.
See the APIs currently supported in Firefox and other browsers. We're continuing to design and implement new APIs in response to developer needs.
Most of the WebExtensions APIs are also available on Firefox for Android.
The Add-on SDK provides APIs for developing Firefox add-ons, and a tool for developing, testing, and packaging them.
You can run Add-on SDK extensions on Firefox for Android, too.
We encourage you to use only high-level APIs because this will make it easier to migrate to WebExtensions down the road.
Migrate an Existing Add-on
There are changes coming to Firefox in the next year that will make browsing more reliable for users, and creating add-ons easier for developers. Your add-on may require updating to maintain its compatibility, but once this is done and the transition is complete, your add-on will be more interoperable, secure, and future-proof than ever.
We've created resources, migration paths, office hours, and more, to ensure you have the support you need to get through the transition.
To get started, use the add-on compatibility checker to see if your add-on will be affected.
If you're thinking of porting your add-on to WebExtensions, there are some porting resources on MDN.
Addons.mozilla.org, commonly known as "AMO," is Mozilla's official site for developers to list add-ons, and for users to discover them. By uploading your add-on to AMO, you can participate in our community of users and creators, and find an audience for your add-on.
You are not required to list your add-on on AMO, but starting with Firefox 40, your code must be signed by Mozilla or users won't be able to install it.
For an overview of the process of publishing your add-on, see Signing and distributing your add-on.
Other types of add-ons
Generally, when people speak of add-ons they're referring to extensions, but there are a few other add-on types that allow users to customize Firefox. Those add-ons include:
- Lightweight themes are a simple way to provide limited customization for Firefox.
- Mobile add-ons are add-ons for Firefox for Android. Note, though, that we intend to deprecate some of the technology underlying these APIs. In the future, WebExtensions will be fully supported on Firefox for Android.
- Search engine plugins add new search engines to the browser's search bar.
- User dictionaries are add-ons that let you spell-check in different languages.
- Language packs are add-ons that let you have more languages available for the user interface of Firefox.
You can use the links below to get help, keep up to date with news around add-ons, and give us feedback.
Use the Add-ons Discourse forum to discuss all aspects of add-on development and to get help.
Use the dev-addons list to discuss development of the add-ons ecosystem, including the development of the WebExtensions system and of AMO:
If you're a fan of IRC, you can get in touch at: