A software extension is software that serves to extend the capabilities of or data available to an existing software application; it becomes included in the program. This term often (mistakenly) coincides with the plug-in. When installing software, one may be instructed to take one or more steps related to installing extensions (or these steps may automatically be done for the user).
The format of extensions can vary from one program to another, with for example:
- XPI format for Mozilla family (the browsers Firefox and SeaMonkey, the email client Thunderbird, but Nvu and Songbird)
- ZIP format for Opera Browser
- JAR format for Java (part of the XPI include JAR files)
Extensions vs. plug-ins
Extensions differ slightly from plug-ins. Plug-ins usually have a narrow set of capabilities. For example, the original impetus behind the development of Mozilla Firefox was the pursuit of a small baseline application, leaving exotic or personalized functionality to be implemented by extensions to avoid feature creep. This is in contrast to the "kitchen sink" approach in its predecessors, the Mozilla Application Suite and Netscape 6 and 7. Therefore, after integration, extensions can be seen as part of the browser itself, tailored from a set of optional modules.
Firefox also supports plug-ins using NPAPI. When the browser encounters references to content a plug-in specializes in, the data is handed off to be processed by that plug-in. Since there is generally a clear separation between the browser and the plug-in, the results are discrete objects embedded within a webpage. The same distinction between plug-ins and extensions is in use by other web browsers, such as Microsoft Internet Explorer, where a typical extension might be a new toolbar, and a plug-in might embed a video player on the page. Since plug-ins and extensions both increase the utility of the original application, Mozilla uses the term "add-on" as an inclusive category of augmentation modules that consists of plug-ins, themes, and search engines.
- Mozilla Firefox plugins - Description of the difference between Mozilla Firefox plugins and extensions under the general term add-on.