Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ActivityPub implementation #3186

Open
1 of 5 tasks
mediaformat opened this issue Jan 26, 2024 · 5 comments
Open
1 of 5 tasks

ActivityPub implementation #3186

mediaformat opened this issue Jan 26, 2024 · 5 comments

Comments

@mediaformat
Copy link
Contributor

mediaformat commented Jan 26, 2024

Plan

Tentative plan for activitypub implementation and feature development

Overview

  • Sprint 1

    • Setup / Planning
    • Add new json_activity templates and endpoints (profiles, posts)
    • Add ActivityPub actor URI to webfinger
    • Add ActivityPub link-rel discovery to html templates
  • Sprint 2

    • Migrate annotations
    • Adapt/update existing annotations db querying code
    • Minimally implement http-foundation Request methods for use with landrok/activitypub
  • Sprint 3

    • Prepare actor inbox and sharedInbox endpoints and controller to receive remote Post requests
    • Add Followability / Followers Collection
    • Add Sending posts/updates/deletes to followers
    • Add cryptography (Generating Digests, HTTP Signatures)
  • Sprint 4

    • Add site configurable blocklist
    • Add user configurable blocklist
    • Add Incoming replies processing
  • Sprint 5

    • Add ability to Tag remote users / webfinger lookup
    • Add Replies collection to Posts

Additional context

Following up from #2615
This issue will be used to discuss some implementation approaches

@jeremycherfas
Copy link

I cannot speak to the specific steps, though I am pleased to see this making progress. The one feature I very much hope to see is a check-box so that one can decide on a per-post basis whether to federate a post.

@mediaformat
Copy link
Contributor Author

@jeremycherfas I've created a new issue based on your comment, I hope you don't mind I tried to broaden the scope a bit.

Were you considering a public post that DOES NOT federate? (Please follow up here #3187 )

@mediaformat
Copy link
Contributor Author

Considering landrok/activitypub library relies on an http-fondation Request to work with incoming activities, I'm currently evaluating Streamlined Request/Response Interface .

@mediaformat
Copy link
Contributor Author

@benwerd In light of #2461, I propose Sprint 2 should bring annotations into a separate table.

My other concern is regarding the adoption of standard messaging interface re: #3029.

Doing this seems worthwhile as it allows us to use some of the main features of landrok/activitypub:

  • an interface for receiving and verifying activities
  • some convenient methods for retrieving remote objects and traversing collections

@mediaformat
Copy link
Contributor Author

Keeping an eye on HTTP Signature Verification issue in landrok/activitypub for Sprint 3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants