Messaging is an eternal problem. Most people tend to have a preferred specific messenger which can make communicating a bit of a hassle, with the breadth and depth of various services out there.
Some popular services include Telegram, Signal, Messenger, Whatsapp, IRC, Matrix, XMPP and Discord. Almost all of these require a separate application and configuration, in addition to a separate client.
Personally, I'm a bit of a pragmatist with communication. I am happy to go where my friends are, even if their chosen platform strongly goes against the things that I consider important in such a platform.
One approach is to essentially iframe everything into a single master web client, which is the approach that Franz takes.
I didn't fully review this product, the free version was too limited for my purposes.
My current favored solution is based on the implementation that Beeper generously maintains. This product bridges all of your communications together for $10/month. It combines a series of Matrix bridges with a beautifully customized fork of the SchildiChat Matrix client. They are currently accepting registrations on a waitlist basis- I've been on the waitlist for years but haven't been able to try it out yet. Given the amount of engineering overhead and server resources required for Synapse, I'm very curious how they approach these challenges.
Thankfully they have an open source ansible script they maintain that allows you to spin up your own instance of this Matrix based service:
While you can't use their customized client, it gives simple instructions for installation and configuration (it is fairly involved, and would be rough if you're not technically inclined) via an ansible playbook, which makes managing and administrating your installation a breeze.
The default Synapse (a Matrix server implementation written in python) server is not particularly resource efficient. It is possible to install on a VPS with 2GB of ram, but I'd recommend 4GB as Synapse is memory hungry, particularly if you use Matrix itself for anything outside of bridging to other services.
The cost of self hosting depends on your VPS provider- a 4GB VPS on racknerd costs less than $45 per year when they are on special. You will want a domain name as well if you do not already have one.