There seems to be a serious lack of a Discord equivalent fediverse platform unlike other social media alternatives. Most of the closest options are either too overwhelming in UI/UX for majority of people coming from Discord, missing deal-breaking features like video calling or are not federated.

Could it due to some technical limitation of the ActivityPub protocol? I skimmed through its documentation and I get the impression that content may not be accommodating of instant messaging without unconventional modifications. It would also be troublesome to federate massive bunch of messages across (physical) servers in real time.

If it were truly possible to create a Discord alternative, what would it take to make it compatible with the fediverse while also ensuring it feels functional and intuitive for migrating users and not pose too much of a resource drain for self hosters?

Edit: Modified title to clarify post talking about ActivityPub in particular

  • julian@activitypub.space
    link
    fedilink
    arrow-up
    8
    ·
    edit-2
    15 hours ago

    Discord has both private and public channels. I won’t bother considering their threaded discussion offerings, because they’re absolutely horrendous.

    ActivityPub is primarily public. You have scoped visibility that enables things like private messaging, but there is no implementation that allows for federated private group discussions.

    There are proposals and a few implementations, but they all rely on everybody else to implement the same proposal, otherwise messages leak out, and that defeats the entire assumption of the private group.

    It’s not an unsolvable problem, merely one that hasn’t been successfully solved yet.

    As for whether AP is a good fit… It’ll work. At the end of the day you’re exchanging messages. Whether they’re long form or chat messages makes little difference.

    • gandalf_der_12te@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      1
      ·
      2 hours ago

      I think the reason why Matrix doesn’t use AP is mostly to draw a clear line between public and private activity. Because if you use one protocol for both, the temptation is high to mix them and that leads to unclean implementations which leak messages. I think it should stay divided.