Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
We Distribute
  1. Home
  2. General Discussion
  3. "how to not regret c2s"

"how to not regret c2s"

Scheduled Pinned Locked Moved General Discussion
activitypubfedidevs
26 Posts 11 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
    @nelson given the architecture i'm proposing is effectively the atproto PDS/AppView split, i don't think there's too much that's activitypub-specific here
    smallcircles@social.coopS This user is from outside of this forum
    smallcircles@social.coopS This user is from outside of this forum
    smallcircles@social.coop
    wrote last edited by
    #5

    @kopper @nelson

    This is marvelous. I wasn't aware of your project, but now I am and added it to the #ActivityPub #C2S tracking list.

    I've also lined up #Outpost for inclusion on the delightful #fediverse curated lists at https://delightful.coding.social

    1 Reply Last reply
    0
    • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
      "how to not regret c2s"
      w.on-t.work/activitypub/c2s

      my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

      #activityPub #fediDevs
      kopper@not-brain.d.on-t.workK This user is from outside of this forum
      kopper@not-brain.d.on-t.workK This user is from outside of this forum
      kopper@not-brain.d.on-t.work
      wrote last edited by
      #6
      did some minor updates, no clue if the cached view updated yet but you can read the diff here if you already read the article before:

      codeberg.org/KittyShopper/w.on-t.work/commit/5e22c16b6df73b8c36cba07171ffe8a0b509aa32
      kopper@not-brain.d.on-t.workK 1 Reply Last reply
      0
      • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
        "how to not regret c2s"
        w.on-t.work/activitypub/c2s

        my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

        #activityPub #fediDevs
        hipsterelectron@circumstances.runH This user is from outside of this forum
        hipsterelectron@circumstances.runH This user is from outside of this forum
        hipsterelectron@circumstances.run
        wrote last edited by
        #7

        @kopper unfortunately not the point but this is easily the craziest css i've ever seen. bravo

        1 Reply Last reply
        0
        • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
          "how to not regret c2s"
          w.on-t.work/activitypub/c2s

          my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

          #activityPub #fediDevs
          amy@sk.girlthi.ngA This user is from outside of this forum
          amy@sk.girlthi.ngA This user is from outside of this forum
          amy@sk.girlthi.ng
          wrote last edited by
          #8

          @kopper@not-brain.d.on-t.work 1am rants are always peak writing

          1 Reply Last reply
          0
          • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
            "how to not regret c2s"
            w.on-t.work/activitypub/c2s

            my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

            #activityPub #fediDevs
            fiore@brain.worm.pinkF This user is from outside of this forum
            fiore@brain.worm.pinkF This user is from outside of this forum
            fiore@brain.worm.pink
            wrote last edited by
            #9

            @kopper@not-brain.d.on-t.work what does c2s mean in this context ?

            kopper@not-brain.d.on-t.workK 1 Reply Last reply
            0
            • fiore@brain.worm.pinkF fiore@brain.worm.pink

              @kopper@not-brain.d.on-t.work what does c2s mean in this context ?

              kopper@not-brain.d.on-t.workK This user is from outside of this forum
              kopper@not-brain.d.on-t.workK This user is from outside of this forum
              kopper@not-brain.d.on-t.work
              wrote last edited by
              #10
              @fiore activitypub client-to-server
              fiore@brain.worm.pinkF 1 Reply Last reply
              0
              • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                @fiore activitypub client-to-server
                fiore@brain.worm.pinkF This user is from outside of this forum
                fiore@brain.worm.pinkF This user is from outside of this forum
                fiore@brain.worm.pink
                wrote last edited by
                #11

                @kopper@not-brain.d.on-t.work isnt that how AP usually works ? ( im stupid but interested )

                kopper@not-brain.d.on-t.workK 1 Reply Last reply
                0
                • fiore@brain.worm.pinkF fiore@brain.worm.pink

                  @kopper@not-brain.d.on-t.work isnt that how AP usually works ? ( im stupid but interested )

                  kopper@not-brain.d.on-t.workK This user is from outside of this forum
                  kopper@not-brain.d.on-t.workK This user is from outside of this forum
                  kopper@not-brain.d.on-t.work
                  wrote last edited by
                  #12
                  @fiore no not really. usually only the server-to-server bit is used and (microblogging) client apps use mastodon's bespoke api
                  fiore@brain.worm.pinkF 1 Reply Last reply
                  0
                  • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                    @fiore no not really. usually only the server-to-server bit is used and (microblogging) client apps use mastodon's bespoke api
                    fiore@brain.worm.pinkF This user is from outside of this forum
                    fiore@brain.worm.pinkF This user is from outside of this forum
                    fiore@brain.worm.pink
                    wrote last edited by
                    #13

                    @kopper@not-brain.d.on-t.work oh yea ok makes sense . this seems cool ill check it out ^^

                    1 Reply Last reply
                    0
                    • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                      did some minor updates, no clue if the cached view updated yet but you can read the diff here if you already read the article before:

                      codeberg.org/KittyShopper/w.on-t.work/commit/5e22c16b6df73b8c36cba07171ffe8a0b509aa32
                      kopper@not-brain.d.on-t.workK This user is from outside of this forum
                      kopper@not-brain.d.on-t.workK This user is from outside of this forum
                      kopper@not-brain.d.on-t.work
                      wrote last edited by
                      #14
                      another minor update, fixing a few typos and linking a few more things. also toned down the snark cuz i've been enough of a dick already

                      codeberg.org/KittyShopper/w.on-t.work/commit/d998852290e9652f4511108ea2b8729d5e148205
                      1 Reply Last reply
                      0
                      • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                        "how to not regret c2s"
                        w.on-t.work/activitypub/c2s

                        my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

                        #activityPub #fediDevs
                        lina@tech.lgbtL This user is from outside of this forum
                        lina@tech.lgbtL This user is from outside of this forum
                        lina@tech.lgbt
                        wrote last edited by
                        #15

                        @kopper not a complaint but i do find it interesting that like this we would have "instances" be similar to bsky PDS [probably with a lot of differences re: federation but] and the "clients" like their appview[-s] + whatever was the name for the feed curator/moderation thing

                        kopper@not-brain.d.on-t.workK 1 Reply Last reply
                        0
                        • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                          "how to not regret c2s"
                          w.on-t.work/activitypub/c2s

                          my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

                          #activityPub #fediDevs
                          alexia@shrimp.starlightnet.workA This user is from outside of this forum
                          alexia@shrimp.starlightnet.workA This user is from outside of this forum
                          alexia@shrimp.starlightnet.work
                          wrote last edited by
                          #16
                          @kopper haven't read the full thing but so far I very much like this
                          1 Reply Last reply
                          0
                          • lina@tech.lgbtL lina@tech.lgbt

                            @kopper not a complaint but i do find it interesting that like this we would have "instances" be similar to bsky PDS [probably with a lot of differences re: federation but] and the "clients" like their appview[-s] + whatever was the name for the feed curator/moderation thing

                            kopper@not-brain.d.on-t.workK This user is from outside of this forum
                            kopper@not-brain.d.on-t.workK This user is from outside of this forum
                            kopper@not-brain.d.on-t.work
                            wrote last edited by
                            #17
                            @lina yeah it's effectively the same architecture, i did have an explicit mention of that but removed it as it was attached to some unnecessary snark
                            1 Reply Last reply
                            0
                            • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                              "how to not regret c2s"
                              w.on-t.work/activitypub/c2s

                              my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

                              #activityPub #fediDevs
                              kopper@not-brain.d.on-t.workK This user is from outside of this forum
                              kopper@not-brain.d.on-t.workK This user is from outside of this forum
                              kopper@not-brain.d.on-t.work
                              wrote last edited by
                              #18
                              i should open issues on github.com/swicg/activitypub-api/issues for all my proposals and end up committing 10 faux pas in a row because they still havent decided on if they want a monolithic One Server that replaces the mastodon api or something actually worthwhile to implement
                              1 Reply Last reply
                              0
                              • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                                "how to not regret c2s"
                                w.on-t.work/activitypub/c2s

                                my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

                                #activityPub #fediDevs
                                volpeon@icy.wyvern.ripV This user is from outside of this forum
                                volpeon@icy.wyvern.ripV This user is from outside of this forum
                                volpeon@icy.wyvern.rip
                                wrote last edited by
                                #19

                                @kopper Your opinions are pretty much the same as mine. That's always how I approached my own instance server projects before the requirements inevitably grew way over my head haha

                                1 Reply Last reply
                                0
                                • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                                  "how to not regret c2s"
                                  w.on-t.work/activitypub/c2s

                                  my opinions about how activitypub c2s ought to be implemented, probably with way too much snark for anyone to take it seriously. wrote pretty much all of it at like 1 am so expect the writing to not be great. will prolly regret it tomorrow but eh. whatever

                                  #activityPub #fediDevs
                                  kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                  kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                  kopper@not-brain.d.on-t.work
                                  wrote last edited by
                                  #20
                                  also unrelated but i may as well throw this in here since i keep thinking about it but. doing c2s this way also opens your client up to being multi-protocol. say you want to be like wafrn and federate both via ap and atproto, you can then plug in PDSs the same way you plugged in AP C2S servers. your own client can then merge both into one

                                  this does lose a handful of the benefits some features mentioned would bring. you would need to store all the data yourself as you'll need your own common API format, you'd need to maintain your own login tokens, your backend would need to act as a proxy for writing to the PDS/C2S server which enables you to cut that off completely if you "go evil". i did touch upon these downsides on
                                  w.on-t.work/this-tall-to-interoperate

                                  or alternatively, you could have a "personal bridgy" which can be both a c2s client and an atproto client/appview and bridge the objects of an individual actor, irrelevant of which client is used to create them in either direction, but bridging like this isn't really interop because e.g. replies from the other network would not be visible without client support
                                  kopper@not-brain.d.on-t.workK 1 Reply Last reply
                                  0
                                  • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                                    also unrelated but i may as well throw this in here since i keep thinking about it but. doing c2s this way also opens your client up to being multi-protocol. say you want to be like wafrn and federate both via ap and atproto, you can then plug in PDSs the same way you plugged in AP C2S servers. your own client can then merge both into one

                                    this does lose a handful of the benefits some features mentioned would bring. you would need to store all the data yourself as you'll need your own common API format, you'd need to maintain your own login tokens, your backend would need to act as a proxy for writing to the PDS/C2S server which enables you to cut that off completely if you "go evil". i did touch upon these downsides on
                                    w.on-t.work/this-tall-to-interoperate

                                    or alternatively, you could have a "personal bridgy" which can be both a c2s client and an atproto client/appview and bridge the objects of an individual actor, irrelevant of which client is used to create them in either direction, but bridging like this isn't really interop because e.g. replies from the other network would not be visible without client support
                                    kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                    kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                    kopper@not-brain.d.on-t.work
                                    wrote last edited by
                                    #21
                                    i guess you could make a frontend that talks both APIs natively and picks which one to use depending on how you log in, which would avoid the going evil bit, but that increases complexity on the user's device a fair bit (likely manageable though) and still requires you to proxy the content of the other network as trying to fetch it from the client will either rate-limit/be slow or cause auth failures (e.g. an atproto login trying to fetch AP objects)
                                    kopper@not-brain.d.on-t.workK 1 Reply Last reply
                                    0
                                    • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                                      i guess you could make a frontend that talks both APIs natively and picks which one to use depending on how you log in, which would avoid the going evil bit, but that increases complexity on the user's device a fair bit (likely manageable though) and still requires you to proxy the content of the other network as trying to fetch it from the client will either rate-limit/be slow or cause auth failures (e.g. an atproto login trying to fetch AP objects)
                                      kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                      kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                      kopper@not-brain.d.on-t.work
                                      wrote last edited by
                                      #22
                                      now that i think about it, you would need actors and logins for both sides anyway if you're doing bridging, this is prolly not an issue
                                      kopper@not-brain.d.on-t.workK 1 Reply Last reply
                                      0
                                      • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                                        now that i think about it, you would need actors and logins for both sides anyway if you're doing bridging, this is prolly not an issue
                                        kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                        kopper@not-brain.d.on-t.workK This user is from outside of this forum
                                        kopper@not-brain.d.on-t.work
                                        wrote last edited by
                                        #23
                                        bad ideas:

                                        xrpc/com.w3.activitystreams.proxyUrl?id=https://..
                                        {
                                            "endpoints": {
                                                "xrpcProxyUrl": "https://..."
                                            }
                                        }
                                        jb@waf.moeJ 1 Reply Last reply
                                        0
                                        • kopper@not-brain.d.on-t.workK kopper@not-brain.d.on-t.work
                                          bad ideas:

                                          xrpc/com.w3.activitystreams.proxyUrl?id=https://..
                                          {
                                              "endpoints": {
                                                  "xrpcProxyUrl": "https://..."
                                              }
                                          }
                                          jb@waf.moeJ This user is from outside of this forum
                                          jb@waf.moeJ This user is from outside of this forum
                                          jb@waf.moe
                                          wrote last edited by
                                          #24

                                          a XRPC endpoint returning AS2-compatible data would be funny

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          Powered by NodeBB Contributors
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups