The Matrix protocol does an excellent job with these. It is easy to run a small Matrix homeserver (I use Fedora package) - if it does take some disk space depending "rooms" joined.
I hope to work on an authentication extension for my Matrix homeserver that uses the Nostr browser extension instead of traditional username/password - although the protocol requires mapping the npub to a Matrix username (why not the npub? I'll check if it is too long).