Thought it might be helpful organizationally to take some of the discussion on other platforms and put it here.
Some options:
- ActivityPub
- ATProto
- WebSub, RSS, WebMentions, etc.
- Some sort of webhook
ActivityPub
Pros
- Theoretically designed specifically for stuff like what we're doing.
- Decentralized
Cons
- Massive headache to implement.
- Requires way more infrastructure than our use case really needs.
ATProto
(mostly summarizing from conversations in discord here)
Pros
- Relatively lightweight, wouldn't be as involved to implement as ActivityPub
Cons
-
!!! Requires at least one platform to handle all of the traffic of the entire network
-
Doesn't decentralize nearly as well as we'd like
IndieWeb Stuff:
Pros
- A lot lighter than ActivityPub
- Decentralizes much better than ATProto
Cons
- We have to figure out exactly how we're implementing this, like with microformats (h-product?) (webmentions?) (RSS or maybe a json feed?)
- Would require hub infrastructure which, while likely simpler than ActivityPub, isn't quite as simple as just an API endpoint or a webhook.
We could also decide to implement something like a simple webhook for this stuff if we're not happy with the other options for whatever reason. It would almost definitely be lighter than WebSub, but it's also not a standard and there's at least some value in that.
Feel free to let me know if I've got anything wrong, I'm not super familiar with any of the standards listed. I just thought it would be valuable to have a centralized place for discussion of this stuff in the repo!