Possible C2S Implementation in LAUTI

Hi,

I’m one of the developers of https://lauti.org, an Open Source Community Calendar. We are currently investigating on how best to integrate LAUTI into the fediverse. Our friends from https://bonfirenetworks.org/ suggested we should implement the C2S Protocol instead of the S2S Protocol. This would allow a single group or place to connect to an existing ap actor and publish the event there (we would propably also allow for the instance admin to publish all events to a single actor). Our benefit would be, that the implementation would be way easier and for users it’s nice, that they have to follow only one actor instead of multiple ones. As we understand it this would be the opposite direction as other federated event software like https://mobilizon.org/ is doing it.

We would love some feedback on this from people better understanding activitypub and the fediverse.

Hi @p4u1, welcome to SocialHub. Apologies for the tumbleweeds since you posted this. Active fediverse dev discussion seems to have moved elsewhere, haven’t figured out where yet. Maybe activitypub.space?

To your question; making Lauti an AP client rather than server is probably the right architectural decision in theory. But in the short term, the problem is that most fediverse server software, including Mastodon, doesn’t implement the C2S part of the AP spec. Instead devs have mostly implemented the Mastodon API, so that apps designed for Mastodon can be used with instances of their software.

My suggestion would be to take a plugin approach. That way you can develop a PoC using the Mastodon API, making it testable as a client for most existing fediverse services. Then you could develop an AP C2S version that could be used in parallel by people using instances of the growing list of server software that does have implementations of it.

This approach could be a great way to kick the tyres on both C2S approaches, and give feedback about the pros and cons of each. Which could feed into improvements to AP C2S in a later version of the spec.

Just making 2 off the cuff remarks, an observation and a reference. Anyone asked where the dev community’s communication went to, can let a broad beaming smile come to their face, svivel their eyes skywards, then make a broad gesture with their arms, and exclaim solemnly “To the fediverse, my friend. To the fediverse”. And the dotted clouds high above in the steel blue sky will smile back at them, wave and gesture, and sing melodiously “Here we are, come join us”. And so they do. It is a sight to behold.

:face_holding_back_tears:

Or with a tad less sarcasm, you might also say: Even though it is a medium that is not up to the task of holding a grassroots open-standards based ecosystem together, microblogging has become the preferred channel for communication in the app-centric fediverse.

There’s a big uptick of interest in C2S and I am keeping track of that in an open issue (for the time being). EU’s NGI0 funding is currently stimulating this new opportunity to get on a more standards-based track and a future fediverse that is not purely app-centric on the basis of post-facto interoperability, and whack-a-mole maintenance to deal with continual protocol decay that is thus being introduced all the time. In particular these two projects are relevant: The NLnet-funded (via NGI0 Commons) Event Federation initiative, and the W3C SocialCG ActivityPub API task force.

I’d say most importantly seek alignment to the Event Federation initiative first, and then apply that to any ActivityPub implementation, to whatever Specification profile you have chosen to adopt.

PS. What is the reason that this thread does not federate? It looks like it should.. cc @how @angus