Installing the element web-client on a server is actually incredibly easy. It's entirely client side, so you just need a webserver that can server static files.
Download and unzip a release tarball: https://github.com/element-hq/element-web/releases
Place the folder somewhere, maybe /var/www/html/element
. Inside that folder,
copy config.sample.json
to config.json
. This config file allows you to
change some theme settings or configure a different default homeserver which is
probably what you want to do.
Updates just involve downloading a new tarball and extracting it into your webserver directory.
My caddy config looks like this:
element.nilsu.org {
root * /var/www/html/element
encode zstd gzip
log {
output file /var/log/caddy/element.nilsu.org
}
file_server
}