Browserplug-ins are a different type of module and no longer supported by the major browsers.[2][3] One difference is that extensions are distributed assource code, while plug-ins areexecutables (i.e.object code).[2] The most popular browser, Google Chrome,[4] has over 100,000 extensions available[5] but stopped supporting plug-ins in 2020.[6]
Internet Explorer was the first major browser to support extensions, with the release ofversion 4 in 1997.[7]Firefox has supported extensions since its launch in 2004.Opera and Chrome began supporting extensions in 2009,[8] andSafari did so the following year.Microsoft Edge added extension support in 2016.[9]
In 2015, a community group formed under theW3C to create a single standardapplication programming interface (API) for browser extensions.[10] While this particular work did not reach fruition,[11] every major browser now has the same or very similar API due to the popularity ofGoogle Chrome.[4][12]
Chrome was the first browser with an extension API based solely onHTML,CSS, andJavaScript. Beta testing for this capability began in 2009,[13][14] and the following yearGoogle opened theChrome Web Store. As of June 2012, there were 750 million total installations of extensions and other content hosted on the store.[15] In the same year, Chrome overtookInternet Explorer as the world's most popular browser,[16] and its usage share reached 60% in 2018.[17]
Because of Chrome's success,Microsoft created a very similar extension API for itsEdge browser, with the goal of making it easy for Chrome extension developers to port their work to Edge.[18] But after three years Edge still had a disappointingly small market share, so Microsoft rebuilt it as aChromium-based browser.[19][20] (Chromium is Google's open-source project that serves as the functional core of Chrome andmany other browsers.) Now that Edge has the same API as Chrome, extensions can be installed directly from the Chrome Web Store.[21]
In 2015,Mozilla announced that the long-standingXUL andXPCOM extension capabilities ofFirefox would be replaced with a less-permissive API very similar to Chrome's.[22] This change was enacted in 2017.[23][24] Firefox extensions are now largely compatible with their Chrome counterparts.[25]
Apple was the last major exception to this trend, but support for extensions conforming to the Chrome API was added toSafari formacOS in 2020.[26] Extensions were later enabled in theiOS version for the first time.[27]
In 2021, these browser vendors formed a new W3C community group, called WebExtensions, to "specify a model, permissions, and a common core of APIs".[28] However, Google joined this during its overhaul of Chrome's extension API, known asManifest V3, which greatly reduces the capability ofad blockers andprivacy-related extensions.[29][30][31] Thus the WebExtensions group is viewed by some extension developers as nothing more than Google imposing its Manifest V3 design.[32][33][34]
Browser extensions typically have access to sensitive data, such asbrowsing history, and they have the ability to alter some browser settings, add user interface items, or replace website content.[35][36] As a result, there have been instances ofmalware, so users need to be cautious about what extensions they install.[37][38][39][40]
SomeGoogle Chrome extension developers have sold their extensions to third-parties who then incorporatedadware.[42][43] In 2014,Google removed two such extensions from theChrome Web Store after many users complained about unwanted pop-up ads.[44] The following year, Google acknowledged that about five percent of visits to its own websites had been altered by extensions with adware.[45][46][47]
Anyone withprogramming skills can become a browser extension developer, from hobbyists to professionalsoftware developers. Core languages includeJavaScript for logic,HTML for structure, andCSS for styling, mirroring web technologies.[48] Developers use tools likeVisual Studio Code,Git for version control, and browser-specific APIs such as Chrome’sManifest V3 or Firefox’s WebExtensions. Skills inweb development, including theDocument Object Model (DOM) andJSON, are crucial, alongside proficiency withdebugging and browser developer tools.[49]
These extensions enhance functionality across productivity, privacy, and user experience (based on approximate install numbers from theChrome Web Store,Mozilla Add-ons, and other browser marketplaces).
AdBlock: Blocks ads across websites, improving browsing speed and reducing distractions ( ~45 million installs).
Adblock Plus: Filters advertisements with options for acceptable ads, widely adopted for privacy.
^Stuwe, Cuyler (29 December 2021)."Re: Do not outlaw dynamic code".GitHub.Nobody outside of Google really has any meaningful sway, since Chrome currently owns nearly all of the market share; Google sets the rules, other people nitpick minor details, and everyone pretends that everyone had a meaningful say.
^"Re: Do not outlaw dynamic code".GitHub. 2 January 2022.Google has shown no interest whatsoever in deviating from their original plans. So, it's quite clear what's happening here. MV3 is a business decision, not an engineering decision.