Hi,
I've been working on UI extensions lately and those extensions are
implemented as components.
To be able to have components both defined from java code and from
wiki documents I've worked on the xwiki-platform-component-wiki module
started by Jerome a while ago.
The initial design is described here:
http://dev.xwiki.org/xwiki/bin/view/Design/WikiComponents
In addition the module allows other modules to easily synchronize java
components with content coming from XObjects.
To do so you need to implement WikiComponent [1] and
WikiComponentBuilder [2]. Then a manager will automatically
unregister/register your components whenever it's required: when the
wiki starts, when a document is updated, deleted, etc.
In order to commit the UI extension module I need
xwiki-platform-component-wiki to be moved to platform.
Here's my +1