I use XMPP every day to talk to friends & self-host a Prosody server (may move to ejabberd in the future).
The client & server situation can be a bit loosey-goosey since the base XMPP spec isn’t large, but involves a ton of opt-in XEPs. Luckily the Conversations compliance helps define a common set of expected specifications for servers & in many senses, I’m happy to see there is a zoo of clients you can find that fit your need from a CLI, to TUI, to web, to native clients that something will meet your needs & written in several different languages so you could find something that fits your interest for contributing to if you have the skills.
I use XMPP every day to talk to friends & self-host a Prosody server (may move to ejabberd in the future).
The client & server situation can be a bit loosey-goosey since the base XMPP spec isn’t large, but involves a ton of opt-in XEPs. Luckily the Conversations compliance helps define a common set of expected specifications for servers & in many senses, I’m happy to see there is a zoo of clients you can find that fit your need from a CLI, to TUI, to web, to native clients that something will meet your needs & written in several different languages so you could find something that fits your interest for contributing to if you have the skills.