When communicating in groups, collaborating at work, or talking in online communities it’s common to want to talk about a range of topics with the same set of people.

We want to improve Element to make it easier to do that. Most people either painstakingly create multiple rooms and send invites to each one individually, or they brave our old and unloved Communities feature and hit its many limitations.

Spaces rethink groups in Element and Matrix, and today we’re launching public beta testing on Element Web, Desktop and Android (with iOS coming soon!). What are Spaces?

Put simply, Spaces are a way to group rooms and people together, and come in three main flavours:

Public Spaces: Optimised for communities. Easily shared and discovered using links anywhere you'd like.
Private Spaces: Optimised for teams. Private and invite only, but easily explored by people you trust to join.
Personal Spaces: Optimised for you. Organise any of your conversations in any way you'd like.

Creating & previewing Spaces on Android

Spaces also make it easy to discover rooms, with room directories for each Space, instead of each server. Spaces also support ‘Suggested rooms’ which let admins mark rooms they think might be useful to everyone in the Space. How can I test Spaces?

Spaces are available now on Element Web, Element Desktop and Element Android. Once you’re up to date, come join us in the Matrix Community Space!

On the Web & Desktop, you can enable and disable the beta by clicking on the (+) icon in the now affectionately titled Space panel. On Android, just update to the latest version on Google Play or F-Droid.

On iOS, we’re still busy implementing Spaces. However if you join rooms which belong to Spaces, you’ll still be able to talk in them. We need to go deeper

While researching Spaces, we discovered people feel constrained by the limitations of the most popular platforms today. For example, the structure which makes sense to an admin, moderator or manager might differ from the best or most productive view of the same conversations. This led us to Personal Spaces, which will replace Element’s old ‘custom tags’ easter egg.

Similarly, we found people are constrained by single column flat lists of conversations— which lack the flexibility needed to organise information with any relative sense of importance, value or area. To that end, the same way Spaces contain rooms, they can also contain other Spaces! This allows you to build whatever hierarchy of information you want to, as flexibly as you organise files and folders.

Using Spaces and Subspaces to build hierarchies effectively turns Matrix into a global decentralised filesystem for conversations and other real-time data! There are a few rough edges in them today, but we’re shipping now to get feedback sooner (more on that below). What’s next?

We would love your feedback! In app, you can submit feedback which helps us iterate, prioritise and ensure we’re solving the right problems. You can also join us in the Spaces feedback room.

Things we have planned to ship as we continue to progress the beta include:

Auto-joining rooms when joining a Space— to ensure visitors or members see and participate in the same communal rooms.
User permissions which cascade from Spaces to rooms— to allow admins and moderators of Spaces to be able to manage all rooms, and ease managing your Space when you remove people from them.
Maturing Subspaces and Space hierarchies— smoothing over rough edges, building out public Space hierarchies and exploring drag and drop interfaces. We think hierarchical Spaces will be a paradigm shift in Element and Matrix, and they’re our love letter to the raw power and flexibility of Usenet and other giants before us.
Improving onboarding into Spaces— from email invites to how you preview Spaces, to let you make better decisions about which Spaces you want to join.
Space bridges— to unify communications across multiple workspaces, services and apps (here's a sneak preview of an early MS Teams bridge).
Outstanding feature implementations on iOS.

Ultimately, we’re working towards making Spaces useful and stable enough to exit beta, and formally replace our old Communities feature.

Building Spaces required a new approach to building features in Element and Matrix. The original Matrix Spec Change proposal was led by design thinking, prototyping and testing up front, with a dedicated cross-functional team spanning design, product, mobile, web and backend engineering. Since we previewed Spaces at FOSDEM we’ve been testing and iterating on the user experience— and as the beta progresses it’s only going to get better!

We’ve spent significant time trying to get this right. The resulting difference in quality should hopefully be obvious, while also setting the foundations for advancing and improving Element’s usability moving forward. Huge kudos to the team for getting to this milestone.

We hope Spaces help you organise your conversations in ways you haven’t been able to before!

  • Ninmi
    link
    fedilink
    93 years ago

    Do note that the Spaces beta is (or at least was when this post was published) missing fundamental features and is unusable for the vast majority of use cases. You can make a private Space for you and your friends but there’s no way for your friends to see the other rooms because they’re private (no Space level access yet).

    So right now it’s not a whole lot better than the old Communities so there’s no reason to get excited or too invested just yet.

  • Halce
    link
    fedilink
    83 years ago

    I hope these groups will be a part of the Matrix.org spec, so that 3rd party clients can implement them too, not just Element specifically.

  • poVoq
    link
    fedilink
    -33 years ago

    Feels like a me-too feature copying from Discord.

    Just some food for thought: if the spaces were actually their own home-servers (like the case in healthy federated systems like XMPP) then you would have the same effect automatically without any complex extra logic involved.

    Basically spaces only need to be a thing to separate out smaller communities on large centralized servers… which is kind of sad to see in a supposedly federated system…

    • Ninmi
      link
      fedilink
      113 years ago

      There’s absolutely nothing wrong with taking what Discord does well, as they do a lot of things really well. The “inverse-irc” model where you join entire servers instead of channels is actually so much better

      And I agree that Spaces could’ve simply been servers. Literally just taking Discord and making servers actual servers would’ve made sense and would’ve been good for decentralization. It actually boggles my mind how there isn’t already a bigger movement in taking what Discord does and building something FOSS/decentrilized.

      • poVoq
        link
        fedilink
        1
        edit-2
        3 years ago

        Well… that’s kind of exactly what happens if you self-host an IRC (or to a slightly lesser extend XMPP) server. Which is where the “server” analogy in Discord comes from in the first place.

        Edit: I think you totally missunderstand IRC ;) What you call “inverse IRC”, is in fact just plain normal IRC how it is supposed to work. You primarily join a server. It even looks the same in your client as Discord’s “servers”. (But yes Freenode/liberachat centralization is bad).

      • @Echedenyan@lemmy.ml
        link
        fedilink
        0
        edit-2
        3 years ago

        Servers in which sense?

        Discord “servers” are not real servers.

        Edited: Oh I understood you now. Quite complex explanation.

    • @UnreliantGiant@lemmy.ml
      link
      fedilink
      83 years ago

      What I like about spaces is that they are not bound to a server, or bound to only rooms of a certain server. People collaborating from different servers can take part in all aspects of managing a space, and you don’t need one server instance per space. The space stays functional even if the server it was created with disappears (assuming the space had admins from different servers too). Another advantage is that you don’t need to do any kind of server hosting yourself to create a space (just use some public matrix instance), which makes it much more accessible. From what I understand Spaces are not that complex in the protocol, they’re mostly just a special kind of room that describes the structure of the space. If they also manage to turn user profiles into a special kind of room, it would be possible to have a truly decentralized identity that is not bound to one single provider in any way.

      • poVoq
        link
        fedilink
        33 years ago

        Hmm, that sounds to me just like a general feature of Matrix’s decentralized rooms, no? But yeah, that is somewhat nice to have.

        As for nomadic identities, yes that would be super cool. I wonder what happend to that after the big announcement that they are working on something like that 2-3 years ago?

        On XMPP there is a new funded effort now to easily migrate accounts between servers. I am hopeful that this will be available for Prosody installations soon.

      • poVoq
        link
        fedilink
        -13 years ago

        Try to come up with some good counter arguments then instead of just being a Matrix fanboy ;)