These days it can be overwhelming to select the best software to use because now more than ever, choices are abundant when it comes to software. Messaging and Communications apps are a great example of that because there are so many options out there. What if you’re looking for a messaging app that scale-able and privacy-focused? It can be even harder.
Thanks to the Element team, I’ve got a great option to show you. Element, previously known as Riot.im, is a cross-platform client that works on the Matrix protocol. What does that mean? Is Neo the One? Well, let’s talk about what the protocol and why you should consider using this great messaging platform.
What Is Matrix?
Matrix team describes it as an “open standard for secure, de-centralised, real-time communication”. First, its open source, more eyes equals better code. We all know how much I love open source…but for the uninitiated, that means more people can read and study the code, security vulnerabilities can be found and fixed faster, and other projects and contributors can build effective integrations into the source project.
Second, its decentralized. This is a little more complicated, but think of it this way, when you stand up an instance of a decentralized application, that is your space. This could be for a family, a meetup, or a company. Every thing would be self contained until you make your instance discoverable. At that point, you@yourhomeserver.com can reach out into the world and find say friend@anotherserver.com.
Thirdly, Matrix supports real time communications. This includes collaboration, messaging, voice, and even video! Matrix provides a series of encryption algorithms and bridges to facilitate end user applications to communicate with one another. You may use Etherpad for real-time collaborative document editing, Jitsi for video conferencing, and in today’s blog post, Element for messaging.
Some of the most popular bridges for Matrix are IRC and Gitter. The Open Source Community jumps in with some of their own too, including Telegram and Google Hangouts.
Matrix enables the communications between these platforms within an instance or throughout the interconnected network of Matrix instances across the Internet.
What is Element?
If Matrix is the network, then the Element client is the vehicle that allows you to traverse that network; Element is the interface for text, voice, and video conversations. Just like the Matrix protocol, the Element client is completely open source!
With the ability to bridge between different apps like Slack right into the Element interface, you no longer need to install and maintain a dozen different apps just to keep in touch with friends, family, work, your volunteer group, your work’s other chat client…you get the idea.
Create an account, activate the needed integrations, and chat with anyone, anywhere on any number of different platforms. Enjoy 1:1 conversation or hundreds of participants in public rooms.
Bonus: One of my favorite features? Notifications management. I can have every notification from every room, set it to only being notified if I am tagged, or never get any notifications…ever. But Element didn’t stop there, nope, they have one of my favorite notification settings I have ever seen: keyword notifications.
Let’s say I want to know any time someone is talking about dogs. I can add keywords to my configuration and get notified anytime someone says dog, dogs, cats drool, you get the idea!
Element has the option to join the central server at Matrix.org, host your own server on your own server, or to pay a monthly fee to a secure, hosted option. In fact, from their website, you can get up to 5 active users a month for as little as $2/month (USD).
Creating Your Account
It’s now time for you to enter the Matrix and get in your Element. See what I did there? Alright, to get started you will need to create an account. One of the best things about Element is that you can use it on all sorts of devices like your laptop, tablet, phone or whatever.
For this guide, I’m going to show you how to do it on the Web client in your browser. So open up your favorite browser, such as Mozilla Firefox, and navigate to https://app.element.io.
Your browser will likely ask you to allow access to persistent storage. Accept it that way Element can store your keys, messages, etc. Next we are going to create an account.
We could create our account on Matrix.Org, but here is a little pro tip: The central server in a federation usually is over-taxed and prone to lag. So, if you know of another public-facing instance, that would be a good bet.
Lucky for us, the Destination Linux Network has some awesome community members that manage LinuxDelta.com, a community-driven hub for information on Linux Distributions, tutorials, and a Matrix server! Instead of using the Matrix.Org option, we are going to go to Advanced/Other:
In the ‘Homeserver URL’ field, type in: https://matrix.linuxdelta.com and click on the green next buttom. Next, it’s time to create a username. The username will be your display name as well so keep this in mind as you decide. This is what people will see you responding as and how they can tag or search for you! Then create a password, make sure its complex. No sense in skimping on security especially if you are utilizing a password manager, like Bitwarden for instance.
For me personally, I am a content creator and a community advocate. I want to be found in the open source community, so, I would add an email so people can look me up via email. If you do, you’ll of course be sent the customary email confirmation link. For now though, let’s go ahead and sign in.
Once you have filled in your username, password, and email go ahead and click the green Register button!
This next step is tricky, but stay with me. One of the advantages of Element we discussed was end to end encryption. We need to generate a Security Key (that is different from our password!). I typically recommend using a system generated key. Then you can use a secure note somewhere to store the key.
Disclaimer – I changed the security key after writing this blog post, so, don’t think you can get into my account that easily. 😀
Once you’ve saved your key somewhere safe, go ahead and enable notifications and read through some of Elements recent announcements.
Getting Connected
You are sitting with a brand new, secured account. Now what? Well, Element is a communication platform, let’s find some people to communicate with!
In the middle of the window, there is the option to “Explore Public Rooms”. Let’s click there. Element will default to your home instance, in this case LinuxDelta.com.
Get connected to The Geek Lab, for instance, by clicking join. That will put you in touch with hundreds of other technology enthusiasts like yourself who hang out, chat, and help each other fix technical problems.
Want to get connected to the broader world? Go back to the Explore button, next to the search bar. In the window we saw before, we have the option to Create a new room, or select a different server. Let’s hop over to Matrix.org.
There are literally thousands of public rooms covering a crazy number of different topics. Many open source projects have communities on Matrix. There are HAM radio enthusiasts, D&D (Dungeon and Dragon) hangouts, and even region-focused rooms.
The join process is exactly the same though for a different server, just find a room you want, click join, and start chatting.
There is plenty more to do and discover. From 1 on 1 conversations, adding bridges, and initiating video calls. However, for now, that is all the deeper we will go!
Closing Thoughts
You maybe surprised to hear that this is not paid content. I wrote this because I believe in Element. I believe that Matrix is going to have a HUGE part to play in the years to come. There are SO many (read too many) apps to keep track. Many of them have ads or tracking built in, or are limited to voice or text. Element, powered by Matrix, has it all. The integrations keep getting better. More and more bridges keep getting built (no pun intended, okay, maybe a little pun).
Open Source is the key. E2E (End to End Encryption) will ensure that your private conversations stay private… You know, I haven’t even mentioned the beautiful interface or that the Element Team release new features on a frequent basis.
Please see attached for the official element app user guide.