Let’s Riot!

Three months ago we launched the public beta of Vector at the electric atmosphere of the Decentralized Web Summit, bringing our contribution to the future of the Web. Since then we’ve seen usage starting to ramp up, as everyone provides incredibly useful feedback on our features and usability, as well as great contributions to help fix and improve it.

We really love the way our community has grown to love Vector, both newbies as well as old timers! And the constant support is definitely pushing us to go even further to make an app which kicks ass :) And if the blog has been quiet since the Summit, it’s mainly because we’ve been busy working hard to bring the app out of beta (whilst adding in a whole new set of beta features — and chatting way too much on Vector itself… Real time comms ftw ;)

As we were gathering feedback, an interesting trend started to emerge: Vector isn’t actually that memorable or exciting a name, especially in the crowded messaging space. Whilst personally we’ve grown attached to the name, in the end it was only ever intended as a codename — a slightly silly pun on Matrix, and it doesn’t really invoke the idea of what the app is or its ambitions.

So here we go, moving Vector to the next stage of its evolution and naming it for good :)

We are proud to say that we are starting a Riot.

Yes, Vector is now called Riot :D

Why? We’re talking about an app which moves barriers: tearing down the walls of the communication walled gardens. We’re talking about an app which brings people together, around a common goal. We’re talking about an app which is more than yet another siloed collaboration tool, one which opens up new opportunities. We’re talking about an app which brings back the power to the user: power to choose the messaging app they want to use, power to use any integration available in an open ecosystem, to encrypt their conversations, to run their own server and fully own their data, to choose how they want to be notified, to innovate on top of an open standard…

And speaking of features, here is the kind of stuff we’ve been adding to make Riot even better:

Notifications panel — never miss a mention again!

Notification panel

Having a nightmare catching up on the morning or after being offline for a while? Well not anymore: go straight to the important bits thanks to the notification panel which lists all the messages where you’ve been mentioned. The notification panel exists on the web only for now.

File panel — All your files in one place!

File panel

Riot is great for tracking versions of file uploads, but whilst infinite scroll back is a lovely feature it can be a pain when you’re looking for a given file. Now just open the file panel to find all files which have been exchanged in the room. Also super useful for picture comparison!

Support for Direct Chats!

Keep missing one-to-one messages as they get lost in the room list? We’ve added the ability to tag rooms as “Direct chats” which will be displayed in the “People” category. Direct chats can be one-to-ones or group chats; you can have several of them with the same people, e.g. Matthew and I have a general chat one, an encrypted one, about 50 test/demo ones, one for bug filing, an Important Matters one, etc.

Direct Chats

The idea is that you might want to be talking to people rather than about a given subject, but that you might also want subject focus rooms with the same group! Hence the need to duplicate and split subject focus vs people focus. The Direct Chats differentiation only exists on the web for now.

Easier invitation and chat creation flows

New invites

Direct chats leads us to the new invitation flow. We got a lot of feedback that create room is not an intuitive action to take when one just want to chat with someone. So we split it out, and starting a chat with one or more people will directly tag the room as Direct Chat. Meanwhile the flow to create a room has been improved, making it more fluid. All clients have been reworked.

Improved room list navigation

The Room Directory now loads instantly and infinite-scrolls through the available list of rooms. You can filter it based on rooms which are bridged to particular remote networks (e.g. IRC, Gitter, Slack…)

Finer notification tuning

Too many notifications but you don’t want to turn everything off as you need visibility on given rooms?

It’s now super quick and easy to tune the level of notification you want per room. You have the choice of making the room totally mute (even mentions won’t be raised), of turning off the notifications for every message unless someone mentions you, of being notified for every message by a push, or of being notified for every message by a push and a sound/vibration. If the 4 levels of notification are only configurable on the web for now, the chosen behaviour impacts every client.

Voice and video conferencing (in beta) on mobile!

Jump on a call or a conferences whilst on the go!! :)

Hosted integration and bridges management

That’s a big one: integrations have been around since day one, but had to be deployed manually. Today anyone can add an integration to GitHub or Giphy in a room, or a bridge to an IRC, Slack or Gitter channel. GitHub integrations allows issue creation (using the user’s account rather than a bot), autocompleting references to issues, and pushes from Git repositories.

End to end encryption in beta

Another huge one! We are previewing Matrix’s end-to-end encryption for the first time using the Megolm ratchet! One can enable encryption in a room (web only, for now), meaning that only the devices participating in the room have visibility over the content of the conversation. Each user has their different devices listed and one can make sure that all devices actually belong to the contact and mark them as verified, or block ones which aren’t trusted.

The main limitations right now are:

  • end-to-end is only available on web
  • history from before the point a device joins a conversation is not decryptable
  • the verification process is quite naive and will be improved.

Meanwhile, today we start an independent public audit of the Olm and Megolm ratchet implementations — watch this space for details!

Other bits and pieces

We’ve also improved the conferencing quality on the web (even if there is still a bunch to do before being out of beta), implemented iOS10 support and a ton of other bits and bobs here and there. Check out the changelogs at http://github.com/vector-im/vector-web/commits, http://github.com/vector-im/vector-ios/commits and http://github.com/vector-im/vector-android/commits if you dare!

Conclusion

Again, the community has been key in helping us deliver this version, especially thanks for the amount of testing everyone has been doing. And despite the name change, we are absolutely the same team, same app, same open source, same way of working: only new exciting features and improvements!

We hope that this evolution is going to both make Riot’s current users even more enthusiastic, and appeal to the lust for freedom of a whole new generation of chatters.

Riot is a giant step towards a new era of communications. Thanks for using it, and have fun!

— Amandine