Those are fair points. Yes, the road to implementing AP federation is still hard. Reason is that implementations (Mastodon, Pleroma) went way ahead of community / documentation / spec development (after v1.0) and they filled in the blanks in the specs making their own implementation choices. Incompatibilities arose between impls, etc. and a new implementer still has to delve into other codebases, old issue threads to find the proper way forwards.
This is bad, of course, but there was organic, though chaotic growth. The AP community has recognized the problem and is slowly catching up. Slow, because its an all-volunteer FOSS movement, atm.
The testsuite being down is a known issue and on the todo-list for a long while [0]. Just yesterday an alternative testsuite was announced [1]. Also the creator of PixelFed has a great test tool called FediDB [2] in private beta.
Finally note that federation with the Fediverse is often not the first goal of new projects, but something that comes later on the roadmap, if at all. Some projects like ForgeFed [3] - federated code forges - need no Mastodon connectivity per se, just interconnect github, gitlab, gitea, etc. and is developing their own spec on top of AP for that.
PS. There is also a guide for new implementers in the making, but currently exists as a wiki post [4] on SocialHub (that you can improve based on own experience).
Thanks for the links, and I appreciate where you're coming from. As is often the case with open source projects, no one is to blame, it's just gone in a direction that's no good for me.
However, I can't imagine that spec is going to be drastically simplified, so I probably won't have another go even if the tooling improves. I don't properly understand large parts of it, and therefore won't be able to troubleshoot or keep up with changes.
I wish the projects that do have the tech chops to implement this properly well, and I'll continue as a user. But I'm going use something simpler if it comes along.
There are also AP libraries in development that do the heavy lifting for you. Furthest along is GoFed, written in go, that just reached its v1.0 release.
> go-fed/activity is unlike most other software on the Fediverse. It is the first standalone ActivityPub library. It is also the pioneering solution in Go. It is designed for those who have no prior experience with ActivityPub, ActivityStreams, JSON-LD, or RDF.
This is bad, of course, but there was organic, though chaotic growth. The AP community has recognized the problem and is slowly catching up. Slow, because its an all-volunteer FOSS movement, atm.
The testsuite being down is a known issue and on the todo-list for a long while [0]. Just yesterday an alternative testsuite was announced [1]. Also the creator of PixelFed has a great test tool called FediDB [2] in private beta.
Finally note that federation with the Fediverse is often not the first goal of new projects, but something that comes later on the roadmap, if at all. Some projects like ForgeFed [3] - federated code forges - need no Mastodon connectivity per se, just interconnect github, gitlab, gitea, etc. and is developing their own spec on top of AP for that.
PS. There is also a guide for new implementers in the making, but currently exists as a wiki post [4] on SocialHub (that you can improve based on own experience).
[0] https://socialhub.activitypub.rocks/t/the-activitypub-test-s...
[1] https://socialhub.activitypub.rocks/t/unofficial-test-suite-...
[2] https://socialhub.activitypub.rocks/t/introducing-fedidb-dev...
[3] https://forgefed.peers.community
[4] https://socialhub.activitypub.rocks/t/guide-for-new-activity...