A short description
Extensions are small addons to a Mozilla product, such as Firefox or Thunderbird, that can extend the functionality of the browser to meet the user's needs.
A longer detailed discussion
Extensions allow a user to enhance their Mozilla product to meet their personal requirements without the core product being too bloated. It can be anything from a toolbar button to a small icon on the status bar to another addon to the right-click menu. Extensions can be created by anyone that has the the knowledge of the following extension-related technologies:
- XPI — Cross-Platform Installer module
- JavaScript – The primary language of Mozilla Browsers
- XUL (XML User Interface Language) – Used to define the UI (User Interface) and interaction with user.
- DOM (Document Object Model) – Used to change XUL in real-time or to edit HTML that is currently loaded
- CSS (Cascading Style Sheets)
- XPCOM/XPConnect
Extensions are installed via an XPInstall module.
Links to relevant resources, tutorials, examples, etc.
- Examples of code or other relevent artifacts
- Newsgroups, mailinglists, IRC channels, etc. relevant to the technology
- Anything else you deem necessary in order to explain/understand your topic