26 results for tag “webextensions”
Testing persistent and restart features
Testing persistent and restart features When testing your extension, you may notice that some features reset themselves or stop working when you load an updated version or after you restart Firefox. For example, you may be using local storage and notice that previously saved...
Test permission requests
Test permission requests Your extension may contain two types of permission request: install time and runtime permission requests. This page explains how you can test the way your users will see requests for these permissions. Contents Permission grant behavior during testingObserve or verify install...
Build an accessible extension
Accessibility guidelines When it comes to accessibility, extensions should follow the same guidelines as websites. However, extensions have unique features that deserve consideration when designing for accessibility. Here is a breakdown of extension features and how they should be used to make an extension...
Porting a Google Chrome extension
Porting a Google Chrome extension The browser extension APIs are designed to promote cross-browser compatibility among extensions. The WebExtension APIs is therefore, to a large extent, code-compatible with the extension API supported by Google Chrome and Opera. Extensions written for these browsers will, in...
Browser compatibility Contents NamespaceAsynchronousAPI CoverageManifest keysMore information While work continues to standardize the APIs used for browser extension development, there remain differences between Chromium-based browsers—such as Chrome, Opera, and the Chromium-based Microsoft Edge—and Firefox. These differences, summarized on this page, include: Namespace: In Chromium-based...
About the WebExtensions API
About the WebExtensions API WebExtension APIs provide a user-controlled, web-focused extension development platform used to extend the features of Firefox. The APIs strike a balance between the functionality extensions bring to Firefox and the risks they introduce to the user experience. Designed to offer...
What does review rejection mean to users?
What does review rejection mean to users? This article explains how users and people looking for your extension are affected should you get a rejection from the Mozilla review process. Contents Review overviewImpact of review rejectionBlocklisting Review overview Any extension you submit to addons.mozilla.org...
Debugging This article explains how to use the Firefox developer tools to debug extensions. An extension can consist of several components—background scripts, popups, options pages, content scripts, sidebars, and alike—and you'll use slightly different workflows to debug each component. Each component has a section...
Firefox workflow overview
Firefox workflow overview Prepare Code Publish* Enhance Retire Choose a Firefox version for web extension development Code your extension Package your extension with web-ext build Responded to Mozilla extension review Retire your extension Choose your IDE or code editor Run your extension with web-ext...
Unique Firefox Capabilities
Unique Firefox Capabilities Take advantage of features unique to Firefox to extend the Web even further. Firefox is a great place to begin your browser extension development. To start, you get the highest compliance with the proposed browser extension API including use of the...
Build a secure extension
Security best practices Here is a list of best practices you should follow to keep the users of your extension safe. If you don't follow these best practices your extension may fail the reviews on addons.mozilla.org (AMO), preventing you from distributing your add-on or...
Submitting an add-on
Submitting an add-on This article walks through the process of publishing an add-on. If you just want to get started, head to the Submit a New Add-on page on AMO. Contents Listing on AMOSelf-distributionGet help To start, familiarize yourself with the Add-on Policies and...
Onboard, upboard, offboard users
Best practices for onboarding, upboarding, and offboarding users The first few minutes after someone installs your extension can be critical to its success. Your new user needs to know where to start and how to use the features of your browser extension. Contents OnboardingUpboardingOffboarding...
Best practices for collecting user data consents
Prompt users for data and privacy consents If your extension collects user data, it needs to comply with the requirement of the Data Disclosure, Collection and Management section of the Add-on Policies. A common developer question about these policies is how to translate them...
Manifest V3 migration guide
Manifest V3 migration guide Manifest V3 became generally available in Firefox 109 after being available as a developer preview from Firefox 101. This page details what's changed and how you adapt your extensions to take advantage of Manifest V3. See the Developing extensions for...
Distribute Manifest V2 and V3 extensions
Distribute Manifest V2 and V3 extensions Learn how to distribute versions of your extension supporting Manifest V2 and V3. Firefox added support for Manifest Version 3 (MV3) extensions in Firefox 109, which was released to general availability January 17, 2023. Earlier versions of Firefox...
web-ext command reference
web-ext command reference This page lists all the commands and options available under the web-ext command line tool. Contents CommandsGlobal optionsSetting option environment variablesSee also Commands web-ext has the following commands; options specific to these commands are included as subsections. web-ext build Packages an...
Browser Extension Development Tools
Browser Extension Development Tools Mozilla and the Firefox browser extension developer community have created a range of tools that can simplify and speed up your browser extension development. This page provides a summary of those tools including details on the features each offers, how...
Temporary installation in Firefox
Temporary installation in Firefox This article describes how you can temporarily install an extension in Firefox for testing and debugging. The extension stays installed until you remove it or restart Firefox. For extension development, automate the processes described on this page by using web-ext....
Join the developer community Tap into the worldwide network of Firefox developers help improve the Firefox add-ons ecosystem. Contents Who is part of the community? Connect with the community Get involved in the community Who is part of the community? Firefox extension developers are...
Firefox version compatibility
Firefox version compatibility Learn how to customize your extension's Firefox version compatibility settings on addons.mozilla.org and when to use this feature. Contents Version compatibilityThe `browser_specific_settings` keyAMO compatibility settingRecommendations Version compatibility Version compatibility controls let you manage which versions of Firefox can install your extension....
Extensions and the Add-on ID
Extensions and the add-on ID Firefox add-ons contain a unique ID that is used to distinguish one add-on from any other Firefox add-on. Firefox uses an extension's unique ID inside Firefox and on the addons.mozilla.org (AMO) website. For example, it's used by Firefox to...
Developing extensions for Firefox for Android
Developing extensions for Firefox for Android Learn more about developing extensions for Firefox for Android Contents Set up your computer and Android emulator or deviceCheck for Firefox for Android compatibilityInstall and run your extension in Firefox for AndroidDebug your extensionManifest V3 compatibility You approach...
Known issues This page contains a list of significant known issues that affect the experience of developing extensions for Firefox and Firefox for Android. Contents Content scripts don't appear in DevToolsExtension source don't update in DevTools"Destroyed actor" errors when debugging Android Content scripts don't...
User experience guidelines for mobile extensions
User Experience Guidelines for Mobile Extensions Make your extension seamlessly integrate with Firefox for Android. Contents IntroductionThe basicsThe extra mileThe last mile Introduction To make sure your users have a great experience with your extension on Firefox for Android, you want to ensure your...
Differences between desktop and Android extensions
Differences between desktop and Android extensions There are some important distinctions to be aware of when developing an extension for Android. Contents IntroductionUser interfaceNative application interactionPermissionsStorage Firefox for Android offers a subset of the WebExtensions APIs available to the desktop version of Firefox. Some...