Welcome to 'Into The Matrix', a series of blog posts about my experiences and my journey into the decentralized chat ecosystem with Matrix, Synapse and Riot.

What Is Matrix?

The Matrix open standard is "a specification for secure, decentralized, real-time communication" maintained by the the Matrix.org Foundation as part of the Matrix open source project under the Apache-2.0 license. Simply put Matrix opensource project is the specification for and implementation of a distributed chat system.

The project started in 2014 and has been adopted by major organizations around the world such as the French Government and Mozilla Foundation.

The Matrix ecosystem consists of a web of Matrix servers, hosted by organizations and individuals. Each Matrix server is responsible for managing user accounts and chat rooms - simply called 'rooms'. Users can designate rooms on their Matrix server as 'public' and advertise them for users of other servers to discover and join. Users can participate in conversations across any number of rooms from any number of Matrix servers seamlessly.

The Magic of Matrix

When you send a message in Matrix, it is replicated over all the servers whose users are participating in a given conversation so even if your server goes offline, the conversation can continue uninterrupted elsewhere until it returns.

Matrix home servers can also operate in complete isolation - serving a similar function to a private slack workspace or a discord server. In this respect Matrix is also ideal as an on premises/behind the firewall service for individuals and organizations with security, privacy or data sovereignty concerns.

First Steps

The lowest investment to entry is to register an account for free on a public Matrix server. The Matrix.org Foundation host the 'matrix.org' server which is open for all to use at no cost. Along side thousands of community rooms organised around any subject you can imagine, the 'matrix.org' server is where you will find the Matrix support rooms, where you can ask questions and get help.

To get started using Matrix you will need a Matrix client.

Riot - A Modern, Cross Platform Matrix Client

Riot.im is an open source, cross platform Matrix client with apps for mobile, desktop and the browser. It's maintained by New Vector under the Apache-2.0 license.

You can install the app for your preferred platform or get started right away using the Riot.im web client in your browser, hosted free for public use at https://riot.im/app.

Register an Account

By default, Riot will invite you to create a free account on the 'matrix.org' Matrix server. If you are just dipping your toes in the water this probably the best option for you.

While optional, I highly recommend providing a email address as, without a registered email address, you will not be able to reset your password or recover your account should you lose access to it.

From Riot.im you can also connect to any other Matrix server by specifying the URL of the Matrix server. But Remember, users of one Matrix server can participate in public rooms of other Matrix servers so it is normally not necessary to register on multiple Matrix servers.

One example where you might log into other Matrix server is if your workplace has a company Matrix server and and you need to sign in with your work account.

Join Some Rooms

Once you are signed in you will want to join some rooms. For starters, I recommend joining the Matrix HQ support channel at #matrix:matrix.org. This way if you get stuck you can come here to get help.

You find Matrix HQ channel in Riot.im by clicking the links above or by clicking 'Explore' in the top left of the GUI and searching for 'Matrix HQ'.

Using the  'Explore rooms' search, you can search for and discover 1000's of public rooms, organized around any imaginable topic or interest and filled with people who share your interest.

Something I would highly recommend doing whenever you join a large, busy public server is changing the room notifications to 'Mentions Only'.

This way you will be notified when someone mentions your name but wont get inundated by a flood of irrelevant messages not directed at you.

Customize Your Experience

If the default 'light' theme is not to your taste you can choose between a 'light' and 'dark' theme in the General Settings.

  1. Open Settings
  2. Select the 'General' tab
  3. Scroll down to 'Theme'
  4. Selected your preferred theme.

You can customise a myriad of other options in the 'Notifications' and 'Preferences' tabs as well.

Future Posts

  • Hosting Your Own Matrix Home Server
  • Hosting Your Own Riot Web Client