Using ActivityPub for less social federation?

I’m currently developing an application for libraries (borrowing, not code) called Means Of Production.

A large part of this will be the federation between the servers - this will enable users of one library to browse and even use items from another. So I have to make a federation protocol of some sort.

I’m wondering if there’s value in extending what’s in AP to do this - while we don’t have posts or anything like that, it’s not hard to map the current model of Borrowers and Libraries into Actors, who can do Actions on our Items, etc.

I’m wondering though if this is just trying to make something fit that the protocol won’t care about and won’t help it.

Does anyone else have experience or any projects doing something similar?

I think what you need to ask yourself is this: For this federation between instances of your application, do you expect all remote instances to be the same software? I.e. all of them running this Means of Production server? If so, use a specially designed protocol between these as there is no reason to use ActivityPub and federate with other sites that run entirely different software.

However, integrating with ActivityPub might allow users on other sites running other software to interact with your library. For instance, you could theoretically imagine a Mastodon user or a Lemmy user (if Mastodon or Lemmy started supporting your AP extension) requesting to borrow something from a remote Means of Production server. If that’s a use case you’d like to support, integrating with ActivityPub might make sense.

Just my 2 cents.

1 Like

Some ActivityPub applications are less “social” than others. For example, Funkwhale (music libraries) and flohmarkt (small marketplaces).

I think ActivityPub is a good choice even if you don’t need social features right now – you may discover an interesting use case for them later during development.

1 Like