--- gitea: none include_toc: true --- # Element-web Element-web is the webinterface, Element in a browser. You'll find the source and [documentation on installing and configuring](https://github.com/element-hq/element-web/blob/develop/docs/install.md) on Github. You should never run Element-web on the same FQDN as your Synapse-server, because of XSS problems. So start by defining a new FQDN for where you will publish Element-web, and get a certificate for that (don't forget to [automatically reload nginx after the certificate renewal](../nginx/README.md#certrenew)). We'll use `element.example.com` here. # Installing on Debian {#debian} Installing it on Debian is very easy indeed: ``` wget -O /usr/share/keyrings/element-io-archive-keyring.gpg https://packages.element.io/debian/element-io-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/element-io-archive-keyring.gpg] https://packages.element.io/debian/ default main" | tee /etc/apt/sources.list.d/element-io.list apt update apt install element-web ``` # Configuration {#configuration} Configuring is done in `config.json`, which needs to go into `/etc/element-web` in a Debian install. See the [documentation on Github](https://github.com/element-hq/element-web/blob/develop/docs/config.md). The most important thing to change is the `default_server_config`. Make sure it's something like this: ``` "default_server_config": { "m.homeserver": { "base_url": "https://matrix.example.com", "server_name": "example.com" } }, ``` Of course, substitute the correct domain and server name. # Browser notes {#browsernotes} Element-web runs in the browser, on JavaScript. Yours truly found out that running [JShelter](https://jshelter.org/) throws a spanner in the works, so you'll have to disable it for the URL you publish Element-web. Also, Element-web is rather dependent on the version of your browser, so make sure you keep yours up-to-date. Debian users, who run "Firefox ESR" should know support for that is on a best effort basis, you might want to consider using the "real" Firefox. [Debian packages are available](https://support.mozilla.org/en-US/kb/install-firefox-linux#w_install-firefox-deb-package-for-debian-based-distributions-recommended). Element Web uses "workers", that are not installed in private windows. One thing that won't work in a private window, is downloading (i.e. displaying) images. If you don't see avatars and get "failed to download" messages, check if you're running Element Web in a private window.