Self-hosting a Matrix server for 5 years

https://news.ycombinator.com/rss Hits: 18
Summary

Self-hosting a Matrix server for 5 years Experiences with the Matrix protocol, Matrix Synapse server, bridges, and Element mobile apps. I have been hosting a Matrix server for about five years now, mostly for text chats between a few relatives and close friends, and a bridge to WhatsApp for a few more people. These are my experiences. Matrix protocol I don't have many thoughts on the protocol itself. The only thing that I don't really understand is the decision on data replication. If a user on server A joins a room on server B, recent room data is copied from server B to server A and then kept in sync on both servers. I suppose this reduces the load on the original server at the expense of federation overhead and space on other servers. However, this also creates a situation where anything said across federation cannot be unsaid, which is an ironic situation for a protocol/system that often comes up when talking about privacy. IIRC, fediverse/ActivityPub uses a similar approach. Synapse server Synapse is the only choice that supports bridges, which was why I wanted to try Matrix in the first place. And back in 2019-2020 this was the only choice anyway. As of right now, I run Synapse, PostgreSQL, and coturn directly, without containerization, on a small VPS. Works well Works fairly reliably, supports bridges, and is more efficient that it was in 2020. API is well documented, and allows authenticating and sending (unencrypted) messages via simple HTTP calls. At some point in time, I wanted to write a simple shell client to use with SXMO and such. Does not have an admin panel There is no admin page or panel. There was a third-party admin site, but it's an entire site just for making HTTP calls. So I ended up writing my own. My Simple Synapse Admin page (Nowadays, the ESS deployment includes developer-made admin, see Future section) Requires PostgreSQL While technically, Synapse can work with a sqlite database (and which at first seems like an OK choice for having <10 ...

First seen: 2025-12-01 11:50

Last seen: 2025-12-02 04:52