I've started putting together a list of #fediverse apps, focused on implementations of #ActivityPub, documenting their status and what tech stack they're (being) built with: https://ethercalc.org/fediverse-stacks
This is a publicly editable doc, so would appreciate corrections/additions, and feedback especially from fediverse devs, but also from instance admins and users:
- What app/implementation/stack did you try?
- Pros/cons you encountered
- What stack & libraries would you choose if starting today?
PS. We've been talking with @bhaugen and others about the need for a generic agent-centric #ActivityPub server, so that instead of signing up to a bunch of different servers, a user could have their indentity and data all in one place, and all the apps they use (clients, but if necessary server-side "plugins" as well) would interact with the activity/objects types that they support.
What do you think?
wouldn't this cause bottlenecks in the network? Like: imagine your identity is stored on a server that goes down when you most need it. Could this be mitigated by some form of cross-server data propagation/mirroring, just like different torrent trackers can index the same torrent file?
> That server can also do down
- it sure can, but social.coop going down will not affect any other instance. But what happens if a hypothetical identity.social service holding the identities of thousands of users across the whole fediverse goes down? I'm not being negative, I'm just curious :)
Now (just talking and thinking stage) is the best time to be negative.
> a hypothetical identity.social service holding the identities of thousands of users
That's not what I am thinking about, anyway. I'm thinking about combos of people who host their own identity and community-oriented servers that might host identities for community members who do not want to host their own.
@Antanicus @cwebber @aaronpk @deadsuperhero @aral @mayel @bhaugen No different than social.coop going down. A generic AP server would host the Actors and their posts snd followings. Unless you had client-side caching like an email client, you will lose access to your data, and you certainly can't send/receive.
@Antanicus @bhaugen Not necessarily. That would be a distributed system as opposed to a federated one. ActivityPub is not meant to be a database in itself, it's a traversable graph that can be converted to a local database.
You could have a DHT that resolves to a changing URL, but that doesn't really address availability of the content by itself. You'd need a replication strategy like primary/secondary, and then point to URLs so that they can be tried in-order. Out-of-scope with current AP spec
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!