XUL (XML User Interface Language) – wieloplatformowy język znaczników oparty na języku XML służący do opisu graficznego interfejsu użytkownika.
XUL nie jest standardem publicznym. Mimo to używa wielu istniejących standardów i technologii, takich jak: CSS, JavaScript, DTD oraz RDF, dzięki czemu jest prosty do nauki dla osób, które zajmują się programowaniem stron internetowych.
Interfejs XUL jest definiowany poprzez trzy składowe:
XUL jest używany do opisu interfejsu m.in. w oprogramowaniu Mozilli, takim jak: Mozilla Application Suite, Thunderbird, Firefox (oraz innych przeglądarkach na nim bazujących), lecz istnieje także możliwość zastosowania go do tworzenia aplikacji sieciowych opartych na protokole HTTP.
XUL definiuje szeroki zakres elementów, które należą do kilku następujących typów:
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin" type="text/css" ?>
<window id="helloworld-window"
title="Hello, world!"
flex="1"
align="center"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<description>
Hello, world!
</description>
</window>