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 ?
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).
@emacsen @cwebber @eliotberriot @kity yeah that's very much a big part of it, people are looking for "alternatives" and it's easy to promote something as "federated [x]" where everything fits your internal model. it's also easier to develop an app-server than it is a generic one. the server does all the heavy lifting, and you can define an app-specific API for handling just the data the server can process. it sidesteps the problem of server capabilities almost completely, that's the API job now
@emacsen @cwebber @eliotberriot @kity of course there's the new problem: which API methods does a server support? what are the limits of each API field? and that's part of the design of the API rather than the design of the server. hence why modified masto or pleroma servers run into issues with the masto API. the server needs to report info about itself a la /api/v1/instance
Server run by the main developers of the project It is not focused on any particular niche interest - everyone is welcome as long as you follow our code of conduct!