I’m new here. travelled all the way from reddit, I don’t get why i get browse remmy on different servers… do they all call the same api?

  • Talos@lemmy.world
    link
    fedilink
    arrow-up
    11
    ·
    2 years ago

    Basically it works much like Reddit but there is no central server. It’s a collection of servers belonging to individuals. Your account lives on one of these individual servers, but you can view and post on other servers as well. This has the benefit of having no central authority to dictate what everyone should do, but the downside of being more fractured. For example, if you are into video games, server A might have a gaming community, and server B might have their own separate gaming community. Nothing is stopping you from subscribing to both, though.

    At the top you will have filters, Subscribed (the communities you are subbed to), Local (the communities on the server where your account is), and All (all communities across the servers that are federated with yours). I’ve been filtering by “All” and subscribing to the communities (subreddits) that I like, whether they are on my server or other servers. I’ve only been here since yesterday and I’ve joined ~25 communities so far.

    Traffic is light at the moment and I’ve often filtered by “New” to see the newer posts. I plan on doing some posting today to contribute. Time will tell if the Reddit blackout and people quitting Reddit will increase the traffic. I imagine they would all call the same API, but I’m not a coder.

    • scarrexxOP
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      so i guess basically a different server can have one feature that another doesn’t? Since they’re different client apps talking to different (or same) APIs?

      • sillypuddy
        link
        fedilink
        arrow-up
        3
        ·
        2 years ago

        People tend to explain Lemmy using an email analogy.

        Lots of people can use email by signing up with different email hosts. You can send and receive email from anyone as long as both parties know each other’s email address. You can look at all of the email you receive by just logging into your account. When one person sends an email, the various email hosts route the email until it finally ends up in the receivers inbox.

        Lemmy is like that, except all of the Lemmy servers (instances) don’t communicate with an email protocol. They communicate with a special protocol that lets them talk about link aggregation stuff (posts submitted by users, comments, upvotes/downvotes , available communities, etc).

        It doesn’t matter which Lemmy instance you register on so long as all of the other Lemmy instances you’re interested in are connected and communicating (aka federated) with the Lemmy instance you’re registered with.

        Hope that helps!

  • dzonc@lemmy.ml
    link
    fedilink
    arrow-up
    3
    ·
    2 years ago

    Not exactly, it’s more like they all speak the same language, so the actual server (or api) you use is less important.

    There are some things that a specific server may choose to do differently, such as sign up or moderation policies.

    • kevin
      link
      fedilink
      arrow-up
      2
      ·
      2 years ago

      Well, but they’re all using ActivityPub protocol, no? That’s the underlying API, and I’m guessing lemmy adds some additional features, but all lemmy servers probably use the same API, I think.

    • scarrexxOP
      link
      fedilink
      arrow-up
      1
      ·
      2 years ago

      so they’re all linked to the same database technically?

      I am a programmer so feel free to get into technical details if you can.

      • kevin
        link
        fedilink
        arrow-up
        3
        ·
        2 years ago

        No - it’s more like email. ActivityPub is the protocol (I think loosely equivalent to sftp or http). Each fediverse “app” (mastodon, lemmy, pixelfed, etc) is a layer of API built on top of ActivityPub. I’m not a web developer so I don’t know the exact analogue here, but it’s maybe like different flavors of webmail, or like different message boards that are email based.

        Basically, every “instance” is running the lemmy application. Different lemmy instances communicate with each other using the lemmy API and the ActivityPub protocol. In principle, a lemmy instance could communicate with a mastodon instance because they use ActivityPub under the hood, but someone would need to translate the API - mastodon has no concept of upvotes or downvotes for example, and lemmy doesn’t seem to know what a boost is (boosting, formerly “retooting” is analogous to a retweet on Twitter).

  • Unicorn 🌳
    link
    fedilink
    arrow-up
    2
    ·
    2 years ago

    Each server (or “instance”) of lemmy is completely independent, but instances can interface with each other through a standardized API to display content from another instance or interact with content from another instance.

    When you use a client, it interfaces with your instance through its client API, which is also standardized.

    I think Lemmy uses the ActivityPub protocol/API for client/instance and instance/instance communication, just like Mastodon, PixelFed and other federated social networks, so it creates a huge network of independent but compatible instances (and even allows compatibility between completely different social networks!) with no central authority or storage.

    You can read more here about lemmy specifically: https://join-lemmy.org/docs/en/index.html

    Here you can find more info about the Fediverse in general, which is what we call this federated network of instances of all the different softwares, including lemmy: https://joinfediverse.wiki/Main_Page