'XDHBrwQ': 'XDHTML' in a web browser


xdhbrwq is a tool from the Epeios project, which acts as a CGI program for the rendering of applications with an xdhtml interface in web browsers.

xdhbrwq works with GNU/Linux (and probably other POSIX compliant operating systems), macOS and Windows, on IA-32, AMD64 and ARM (AArch32 and AArch64, like those on Raspberry Pi, Banana Pi, ODROID… devices) architectures.


See the compilation dedicated page to see how to obtain the binaries.

Two files called xdhbrwq.xcfg and xdhbrwq.xlcl have to be in the same directory as the one containing the binary.

Like all CGI programs, xdhbrwq interacts with an HTTP server software (like Apache), through a PHP script (which looks more like a CGI program as xdhbrwq, although it's the latter which is truly the core of the CGI program). This script, called xdh.php, is common to all xdhtml-based software, so you you have to put in the same directory as the one containing xdh.php another PHP script called <target>.xdh.php (<target> is the target software, as defined below), which looks like:

$host= "HOST";
$service = SERVICE;

with HOST, the host or IP address of the computer on which xdhbrwq is launched (usually localhost), and SERVICE, the port on which xdhbrwq listens to, as defined in the above mentioned Configuration section.

The xdh.php script is in the xdh directory of the xdhbrwq part of the application's package. This directory, or, at least, all its content, should be placed somewhere where it is accessible from your web server (i.e. generally in a directory referred as htdocs, or one of its subdirectory).

The URL to access the application is (http could be https, depending on your web server configuration) http://<address:port>/<path to>/xdh.php?_prolog&_target=<target>&_action=<action>&_language=<language> with:

  • <address:port>: the address and port of your web server (:port is usually not required, if your web server is configured to use the standard one (80, or 443 for https)),
  • <path to>: the path to the xdh.php file, from the server point of view (generally a path relative to a directory referred as htdocs),
  • <target>: the target application (usually specified in the application's documentation),
  • <action>: the action (also specified in the application's documentation),
  • <language>: the language, depending on which ones are available for the application ; generally en and fr are always available.


See the global configuration dedicated page.

There is a Service entry in the Parameters section of the configuration file, which contains the default port to listen to. This value can be changed with the <service> command-line argument. See the user manual for more details.


xdhbrwq is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Other rights can be granted, but only by an explicitly written permission from the author of xdhbrwq.



There is no dedicated download section, as this tool is included in each package which needs it.


xdhbrwq is developed by Claude SIMON (http://q37.info/contact/).

Other resources

  • Source repository:
  • xdhbrwq is hosted1) on GNU Savannah2) ; you will find there some other resources for this tool (bug tracking service, tech support manager…),
  • xdhbrwq is also on Freshcode, with its own RSS/Atom feed to which you can subscribe to be informed when there are new releases.
submission in progress: http://savannah.gnu.org/task/index.php?…
not active yet: see previous footnote.