Why does developing a firefox extension involve installing an sdk?

I'm currently trying to port a Chrome extension into a Firefox add-on, but the development process is incredibly different, and the part in particular that I find confusing is why I should have to install an sdk.

How are these two so different? Do firefox add-ons run faster because they're precompiled? Why aren't firefox add-ons just html and javascript like (some) Chrome ones?

What's going on behind the scenes here that involves using so much command line just to get a firefox addon started?


The SDK exists to help developers build their extentions, but if you don't want to use it there is also a way.

You can use web extensions which as the wiki says have their benefits:

  • Porting add-ons to and from other browsers should be easier.
  • Reviewing add-ons for addons.mozilla.org should be easier.
  • WebExtensions must be compatible with multiprocess Firefox (Electrolysis).
  • Changes to Firefox's internal code should be less likely to break add-ons.
  • WebExtensions should be easier to use than the existing Firefox XPCOM/XUL APIs.

I don't have personal experience with web extension but it seems to be promising for someone who does not want to use SDK and the benefits ofthe web extensions are that they support an enrich manifest document and you only need to zip your extension and run it.

There are some examples on github to get started.

Need Your Help

Indexing through a list in python

python list python-3.x for-loop enumerate

I have a list that I'm trying to loop through and index the number of each number in the list. The total list is around 1500-2000 numbers where each number represents subject behavior. I imported the

Check and uncheck nodes in treepanel

extjs extjs4.2 treepanel

To do : Checking a child should check parents up the tree, and clearing a parent checkbox should clear all of it's children.