Créer une extension Firefox avec XUL

Abonnements, magazines... Notre catalogue complet au bas de cette page.

Firefox est reconnu pour sa grande modularité et la souplesse de ses interfaces. De nombreux développeurs proposent leurs créations et on peut notamment trouver une grande collection d’extensions et de thèmes sur le site officiel de Mozilla. L’objectif de cet article est de vous faire découvrir XUL et ses outils. Nous allons passer rapidement à la pratique en développant une extension Firefox et en abordant la création d’un thème.

XUL est un langage descriptif qui permet le développement d’interfaces graphiques. Il a été conçu par Mozilla pour l’ensemble de ses produits et notamment Firefox et Thunderbird. Le moteur utilisé pour implémenter cette technologie est le même que pour la visualisation de pages web et l’exécution de code JavaScript : Gecko. Rien de plus normal quand on sait que XUL n’est autre qu’une extension des standards du web. Ainsi, développer une application XUL revient à utiliser des feuilles de styles CSS, du code JavaScript, l’API de traitement DOM et le méta-langage XML pour l’interface graphique. Il est donc relativement simple à appréhender pour les développeurs web et les designers d’autant qu’une documentation importante et une communauté active encadrent le projet. Le Mozilla Developer Center en est le point central. Contrairement au XHTML qui est un standard du W3C que tout le monde peut implémenter et utiliser librement, XUL n’a été décrit dans aucune spécification formelle. Pour cette raison, il ne dispose pas non plus de moteur de rendu interopérable : seul Gecko peut être utilisé. Bien que Gecko soit open source et que Mozilla offre un outil permettant d’exécuter les applications XUL en stand alone (XULRunner), XUL reste très dépendant de technologies non standard qui peuvent évoluer régulièrement, comme le montre Firefox 3. Malgré ces limitations apparentes d’interopérabilité, XUL est conçu pour être indépendant des plates-formes. Cela garantit la portabilité des applications sur l’ensemble des systèmes d'exploitation pour lesquels Firefox est disponible. Si l'on considère le large éventail de plates-formes qui supportent actuellement Mozilla, cela peut être une des caractéristiques intéressantes de XUL en tant que technologie pour développer des applications.

Loïc Guillois

S'ABONNER