Last I knew you could TECHNICALLY self-host everything but with little documentation on how to set it up.

Yes. Self-host using this Ansible playbook has been a joy.

https://github.com/spantaleev/matrix-docker-ansible-deploy

A top notch well managed Ansible setup!

It hasn’t integrated in a good iMessage bridge yet last I checked. Hopefully soon!