Fediverse needs: Groups and Communities

This is a continuation of 📊 What does the Fediverse need? - #6 by weex on the subject of Groups.

Standardized Group concepts

In all likelyhood, depending on the kind of app, different variations of how Groups work make sense. But there should not be too many variations or things just become too confusing and on a technical level interoperability becomes increasingly harder.

Especially in the technical implementation there is value on settling on a common denominator of how Groups are modeled, and then add variations on top of that. Common Group models - in order to be broadly adopted - should be as simple as possible, yet allow enough flexibility to be useful in different apps.

The protocols of the Fediverse, called ActivityStreams and ActivityPub, allow extensions to be defined. And we can standardize these extensions, so they can be used as common building blocks for applications that allow interaction between different apps.

Community on the Fediverse

On SocialHub I started a discussion on a related concept that would be very useful for the Fediverse: Community has no Boundary. It defines Community as a common extension. Communities are just Groups with some extra sauce on top.

Right now we have some implicit forms of community, like seeing the Fediverse-as-a-Communty as well as individual instances on the fediverse. And also we have some apps that explicitly define communities, like Lemmy (implemented in a ‘lemmy-specific’ way).

Community is crucial. It is a key concept in society. A real-world concept that in translation to the Fediverse (and other social networks, for that matter) is still really immature.

On fedi we select instances because we want to belong to a group of people who share our interests and where we find friends, feel safe. But we also probably don’t want to (or should?) be just in one single community, as in an echo chamber. We participate more broadly, with other people, and are in mutliple communities at the same time. We have different relationships to each community. Also communities can be related to other communities, and they can have more complex organization structures (like sub-groups).

I personally think that defining Community well would be a huge enrichment of the Fediverse.


Apparently the next Pixelfed release will include groups and they are trying to make it compatible with other fedi projects.


I have never used Facebook or any other Social Media that has groups, so I don’t really know what to expect. How do groups work? What are they good for?

I guess its like Private Messages, but not to one person, but a whole group and then there is a page where you can see all posts in the group. Maybe the group has a name and an avatar. And you can see all media shared in the group at one point.
But I’m just guessing. I never used Facebook either and I never liked group chats in Signal or Telegram.

1 Like

The closest thing most systems have to a group is the hashtag, but the problem with a hashtag is there’s no guarantee that a tagged message is relevant or by anyone related to those interested in the hashtag. So groups usually imply having a moderator/owner who can kick people out who aren’t following the rules of the group. Taking it one step further, a group can be private so that messages sent to the group can only be seen by members. Other things around group identity like an avatar, name, other metadata can be useful but the moderation and privacy are the big ones as I see it.


Yes, Dansup created a topic on SocialHub to discuss technical aspects: Pixelfed Groups - Pixelfed - SocialHub

They can be used in many different ways, just like in the real world, and there are some uses in the wild on fedi already.

  • PeerTube channels are groups.
  • Smithereen and Lemmy have groups in the way @weex describes.
  • Mobilizon has groups where (invited) members post and create public events
  • (and there are probably more I forgot)

An interesting use of groups is Guppe:

  1. Follow a group on @gup.pe to join that group
  2. Mention a group on @gup.pe to share a post with everyone in the group
  3. New groups are created on demand, just search for or mention @YourGroupNameHere@gup.pe and it will show up
  4. Visit a @gup.pe group profile to see the group history

Making it dead easy to create a group and follow it. But it is a special-purpose group. Search in Mastodon web UI for '@activitypub' and you’ll see that masto also recognizes it as a group.


Is there a scheduled date for release? I saw @dansup tooting about it with a certain date but it passed.

1 Like

Attempting to state this as a problem:

The fediverse lacks private spaces. Such spaces are important for deeper connection and for building stronger community relationships. Private spaces are also a competitive advantage for platforms like Facebook who have spent a lot of time and energy making groups work for their users. New users who can’t find groups to join are also less likely to return to fediverse apps and more likely to return to the platforms they know that do support groups. No groups in a federated environment also means that coalitions (groups of groups) cannot be formed so community structure is thus limited.

Applying the usual questions. Is this a valuable problem to solve? I think it clearly is. Is the concise enough? Same, most people understand the idea of a private group and it can’t be scoped down without losing its essence.

Solutions aside, I think it’s worth lingering on the reasons why this problem is important. I just came up with that coalition thing and I bet others can think of more uses for groups.

1 Like

Though I understand the context I don’t know if “private” is the proper description. It is overloading of the word. Groups can be either public or private, but it is the sense of ‘belonging’ to it, membership allowing full participation.

Imho a group can be anything (it is defined as “a collective of actors”), and therefore it exists as a social primitive in the core spec. Community is the concept that covers the need best. We have them implicitly online, because they are such natural part of everyday life that we project them on our tech (e.g. we consider “an instance is a community”). But the tech itself has no concept of community and cannot offer richer community interaction unless we specify how to achieve it.

As for Problems. I have a bit of an issue with it in C4, because not everything starts necessarily with a problem. How about a Need? Grouping things together is a very basic building block of more intricate designs. I think there’s a need for more expressiveness to model all kinds of Groups on top of what current Fediverse provides.

It then boils down to finding a reasonable list of capabilities or use cases e.g.

  • A group can be nested
  • A group can link to other groups
  • An actor can be member of a group
  • An actor can have other relationships to a group

This goes a bit in the technical realm and I’ve discussed more in-depth on SocialHub. But it boils down to being able to model:
Group <-- Relationship --> Actor and the means to manage these relationships.

An interesting topic is on Lemmy and relates to a possible problem that Groups may solve:

1 Like

Great feedback as always.

Perhaps permissions are part of it. A hashtag has no limit on who can use it, so it’s a form of group or community, but a very loosely connected one. On the opposite end is a cult which asks everything in exchange for membership. So instead of private spaces, groups probably is the better word to focus on from when a set of features will come out of it. I would save the word community for the people involved, however they choose to interact with a collective.

The capabilities list is great. I think here we should focus on membership in a group. The others would make good issues to discuss individually.

I think both need and problem are useful lenses to view something which requires action. Each can be expressed in terms of the other and like two foreign languages tease out additional context and meaning. What I like about problem is that it lacks the emotion of need. Problems may be big or small so we then evaluate. Needs feel less measurable. I associate the word with basics of life plus and then other more emotional desires. This might be worth another thread, perhaps in a place where development process is the focus.