XMPP
I'm sure many who like any sort of decentralised service are sick and tired of email being used for comparison all the time, however since email is ubiquitous for people online it serves still as an apt point of comparison.
Simple Story
XMPP (and its various implementations) lets you have a Username@domainname, much like email. This means that you can self host an XMPP instance. This makes it easier to manage your own security, having the option of being the one in control of your data.
The open nature of the protocol allows for many applications, extensions and more to be developed.
Chat Software/Apps for you
Here are some of the various software that you can use to chat with others via XMPP.
AstraChat
Platform: Android,iOS,Linux,Mac,Windows
AstraChat stands out as a multi-platform application, facilitating XMPP-based communication across Android, iOS, Linux, Mac, and Windows devices. It is available on all major platforms (sorry BSD bros..)
Pidgin
Platform: Linux,Mac,Windows
Pidgin is a classic instant messenger and features a wide range of plugins to enable use with many chat services, XMPP included. Design wise it is similar to MSN or AOL messenger.
Gajim
Platform: Linux,Windows
Gajim is the one that I use the most. It features support for most extensions and nowadays looks akin to slack/discord or whatever generic UI that people use for messaging. I wasnt super pleased by the UI changes to that style, but it is probably more appealing to people.
Jitsi Meet (MISC)
Platform: Web Browser
Jitsi is a very simple web based skype-like XMPP software. The original Jitsi was similar to pidgin looks wise, however it is now mostly for video/audio conference calls
Conversations
Platform: Android
Conversations is probably the most widely used mobile app for XMPP. It has a simple user interface
Cheogram
Platform: Android
Cheogram is another mobile app for XMPP, it is quite similar to conversations. It has a feature that lets you connect it to your mobile number in order to add other users.
Link
The XMPP website has a list of software available to you here, you can filter by your operating system.
https://xmpp.org/software/
Technical details for the nerds
XMPP stands for Extensible Messaging and Presence Protocol.
The way it works is that there is a base functionality, and then a lot of other features are done via extensions and XEPs (XMPP Extension Protocols)
Here are the components that make up an XMPP instance
Jabber/XMPP Clients:
These are the applications used by end-users to send and receive messages. They range from multi-platform clients like Pidgin and Psi to dedicated mobile apps like Conversations and ChatSecure.
XMPP Servers:
Servers manage user accounts, routing, and delivering messages between clients. Notable server implementations include Prosody, ejabberd, and Openfire.
Extensions and Plugins:
XMPP's extensibility is a significant advantage, allowing the addition of new functionalities through extensions or XEPs (XMPP Extension Protocols). XEPs cover a wide array of features, including file sharing, group chats, and even IoT communication.
Encryption
OMEMO and OpenPGP
XMPP supports OMEMO and OpenPGP which allows users to encrypt the content of their messages, this secures the contents of communications across multiple devices.
Extensibility
Thanks to the open nature of the protocol, any future improvements to encryption or new methods have decent likelihood of being used in the scenario where OMEMO and/or OpenPGP are deprecated.
For you?
If you think that this software is something you'd be interested in, There are many different ways of using it, and different moods you can get from it and usecases that can be met.
I think that XMPP is something that should be used more online. It is extremely lightweight and offers a wide array of ways for people to use it.
I have a text only XMPP server that you can use at chat.skyshanty.xyz. Feel free to join the server and shoot me a message @lumeinshin there!
There is a MUC channel for the server, primarily made as a general chat for those who use the fediverse node. general@general.skyshanty.xyz is the group chat. If you do join please introduce yourself to the others there. The chat can be quiet sometimes so dont expect a reply instantly, usual group chat stuff applies 🙂
Addendum
This page will hopefully be updated as the tech develops. If you have any experience with XMPP and suggestions to add to the page please feel free to comment!