Rekonq/Extensions
With Rekonq being a relatively minor browser, it probably makes not much sense to develop a unique extension API. Instead Rekonq should implement existing cross-browser APIs.
User Scripts
User Scripts are pure JavaScript files that modify page contents. Their use is widespread and the technology is implemented by various browsers already:
- Firefox with GreaseMoneky
- Opera
- Chrome / Chromium
- Safari with GreaseKit
This feature is probably the best candidate to be implemented first.
References:
JetPack
Right now, Mozilla Firefox extensions require XUL support to run. This makes it very difficult to implement in non-Gecko browsers.
However, Mozilla is currently developing an extension API that uses just HTML, CSS, and JavaScript. While their main goal is to be compatible across different major versions of Firefox, a side benefit would be that it can be implemented by other browsers as well.
While the final JetPack specification will be released with Firefox 4.0 (currently targeted to be released in Q4 2010) prereleases are available right now that should at least give an overview which preconditions are required to be compatible with those extensions and whether it's even feasible to implement that API.
References:
- https://jetpack.mozillalabs.com/ – SDK
- https://jetpackgallery.mozillalabs.com/ – Extensions in JetPack format
Chrome Extensions
Similar to JetPack, Chrome's extension system in built on HTML, CSS, and JavaScript. The advantage compared to JetPack is, that it's already available and in use. However, Chrome enjoys only a fraction of Firefox' market share which could mean that in the future JetPack will be more popular than Chrome's API.
If not too complicated, maybe even compatibility with JetPack and Chrome is possible.
References:
Nikhil Marathe is working on supporting chrome extensions: extensions branch on gitorious