|This article needs additional citations for verification. (June 2007)|
Add-ons are installable enhancements to the Mozilla Foundation's projects, and projects based on them. Add-ons allow the user to add or augment application features, use themes to their liking, and handle new types of content.
- 1 Types of add-ons
- 2 Compatibility and updates
- 3 See also
- 4 References
- 5 External links
Types of add-ons
Extensions can be used to modify the behavior of existing features to the application or add entirely new features. Extensions are especially popular with Firefox, because Mozilla developers intend for the browser to be a fairly minimalistic application in order to reduce software bloat and bugs, while retaining a high degree of extensibility, so that individual users can add the features that they prefer.
- CSS (Cascading Style Sheets)
- DOM (Document Object Model) – Used to change XUL in real-time or to edit HTML that is currently loaded
- XPCOM (Cross-Platform Component Object Model)
- XPI (Cross-Platform Installer)
- XUL (XML User Interface Language) – Used to define the UI (User Interface) and interaction with user.
- Mozilla Jetpack – a development kit aiming to lower the learning curve and development time for making add-ons.
Some extensions are used to change the interface of the application. These are not to be confused with personas, which are a theme management feature. For example, several add-ons exist to change the color of the Firefox button, such as ColorizedButton. There is also an add-on which moves the menu bar to where the window title normally is on windows machines.
Extensions are generally used to add functions to the application. Examples of functions which an extension might add include RSS readers, bookmark organizers, toolbars, website-specific client programs, FTP, e-mail, mouse gestures, proxy server switching, or developer tools. Many Firefox extensions implement features formerly part of the Mozilla Suite, such as the ChatZilla IRC client and a calendar.
Modifying how the user views web pages
Many extensions can change the content of a webpage as it is rendered. For example, Adblock extensions can prevent the browser from loading images which are advertisements. Another popular extension, Greasemonkey, allows the user to install scripts which modify a targeted subset of webpages on the fly in a manner which is the programmatic complement to user style sheets.
Extensions also exist for frivolous, humorous or satirical purposes. Some allude to historical features of the Firefox browser, for example restoring the "delicious delicacies" placeholder text removed in Firefox 0.9, or generating random browser names to allude to the Firefox name changes.
Security of Firefox Extension Environment
Unlike Google Chrome, The Firefox platform has no mechanism to restrict the privileges of extensions. Extension code is fully trusted by Firefox. There are no restrictions on intercommunication between extensions. This means that one extension can read or modify the data used by another extension.
Compatibility and updates
Add-ons contain files with XML metadata utilized by the mechanism which controls add-on installation. Among other things, this file identifies maximum and minimum versions of a Mozilla project application with which the add-on may be used. If an attempt is made to install the add-on on a version outside of this range, it will install but will be disabled. Add-ons will often work outside of their compatibility range, and indeed some advanced users edit the metadata file to allow the released version of the add-on to run on their install. It is even possible to override the compatibility check using various extensions.
The success of a formal compatibility check is no guarantee the add-on will work, however.
The add-on manager periodically checks for updates to installed add-ons, although checks for updates can be manually initiated by the user. By default, the update service will look for updates at Mozilla Add-ons, but if the developer includes provisions to check elsewhere, the service will do so.
- Chapter 2: Technologies used in developing extensions - Firefox addons developer guide | MDN. Developer.mozilla.org. Retrieved on 2013-07-21.
- User script - GreaseSpot Wiki. Wiki.greasespot.net (2010-11-17). Retrieved on 2013-07-21.
- "Abusing, Exploiting and Pwning with Firefox Add-ons".
- Mozilla Add-ons, the official add-ons repository
- Extensions documentation on Mozilla Developer Center