Integrating go-fed into Gitea

After studying how go-fed is integrated in writefreely, in GoToSocial and the apcore framework, I’m inclined to try and group all enpoints under /api/v1/activitypub and rely on:

  • go-fed/activity for:
    • serialization/deserialization of the message payload
  • go-fed/httpsign for:
    • signing messages
    • verifying the signature of signed messages

Which also means implementing the ActivityPub logic entirely instead of delegating it to go-fed. The reason why I chose this path is that it is unclear to me at this point what the logic go-fed actually implements (which is not to mean it does not implement any logic, just that it is unclear to me after reading the documentation and brrowsing the code). At the same time studying the above implementations I see there is a very significant quantity of code and logic left for the responsibility of go-fed application. And I find difficult to answer the following question: is it more work to implement abstractions proposed by go-fed (pub.Database, pub.CommonBehavior, etc.) or to implement the ActivityPub logic?

I may be wrong to go in this direction and if anyone think so, please speak up :slight_smile: