In my mind, ActivityPub deals with the transport/data layer by providing a standard way to represent objects, activities and broacdcast those over the federation.
But how can a client implement a generic and meaningful UX for every server?
But Plume supports Markdown, while Mastodon doesn't. I don't know for Pleroma but you get the idea.
How would the client know what the server support in terms of features?
Funkwhale and PeerTube instances deal with Audio and Video media, respectively, PixelFed with images, Mastodon and Pleroma with small-to-medium text, Plume and Write.as with long-form content, etc.
Do you think it's possible to provide a unique and comfortable experience for all those projects ?
@eliotberriot @email@example.com I guess since that was the goal of MediaGoblin, I still hold onto that vision. It's also more true on platforms like Facebook and Google Plus (RIP) than it is on Twitter and some others.
@eliotberriot @firstname.lastname@example.org I think if ActivityPub had launched with a more facebook-like flagship implementation rather than a twitter-like one, people would find this less surprising
@eliotberriot @email@example.com You're right that some level of server feature discovery needs to be done though, and we haven't quite implemented how to do that. XMPP may be a source of inspiration there.
The big secret here is that I'd asked "everyone other than Chris" to answer the question at FOSDEM, it's because I'd already asked them this exact question on IRC a month before and they suggested using streams exactly in this way. The reason I didn't want Chris to answer was I was curious to knew what the implementers were thinking (and I already knew what Chris would be likely to say).
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!