Browser extensions
Getting started
What are extensions?
Your first extension
Your second extension
Anatomy of an extension
Example extensions
What next?
Concepts
Using the JavaScript APIs
Content scripts
Match patterns
Working with files
Internationalization
Security best practices
Content Security Policy
Native messaging
User interface
User Interface
Toolbar button
Address bar button
Sidebars
Context menu items
Options page
Extension pages
Notifications
Address bar suggestions
Developer tools panels
How to
Intercept HTTP requests
Modify a web page
Insert external content
Add a button to the toolbar
Implement a settings page
Work with the Tabs API
Work with the Bookmarks API
Work with the Cookies API
Work with contextual identities
Porting
Porting a Google Chrome extension
Porting a legacy Firefox extension
Embedded WebExtensions
Comparison with the Add-on SDK
Comparison with XUL/XPCOM extensions
Chrome incompatibilities
Differences between desktop and Android
Firefox workflow
User Experience
Temporary Installation in Firefox
Debugging
Testing persistent and restart features
Developing for Firefox for Android
Getting started with web-ext
web-ext command reference
Extensions and the Add-on ID
Request the right permissions
JavaScript APIs
Browser support for JavaScript APIs
alarms
bookmarks
browserAction
browserSettings
browsingData
clipboard
commands
contentScripts
contextualIdentities
cookies
devtools.inspectedWindow
devtools.network
devtools.panels
dns
downloads
events
extension
extensionTypes
find
history
i18n
identity
idle
management
menus
notifications
omnibox
pageAction
permissions
pkcs11
privacy
proxy
runtime
search
sessions
sidebarAction
storage
tabs
theme
topSites
types
webNavigation
webRequest
windows
Manifest keys
applications
author
background
browser_action
chrome_settings_overrides
chrome_url_overrides
commands
content_scripts
content_security_policy
default_locale
description
developer
devtools_page
homepage_url
icons
incognito
manifest_version
name
omnibox
optional_permissions
options_ui
page_action
permissions
protocol_handlers
short_name
sidebar_action
theme
version
version_name
web_accessible_resources
Themes
Browser themes
Browser theme concepts
Lightweight themes
Lightweight themes
Lightweight themes FAQ
Publishing and Distribution
Publishing add-ons
Signing and distribution overview
Package your extension
Submit an add-on
Source code submission
Resources for publishers
Creating an appealing listing
Review policies
Developer agreement
Featured add-ons
Retiring your extension
Distributing add-ons
For sideloading
For desktop apps
For an enterprise
Community and Support
Channels
Add-ons blog
Add-on forums
Stack Overflow
Contact us
This document has been moved to the
Add-ons wiki
.