-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Is your feature request related to a problem? Please describe.
We should use this issue as a place to start planning the implementation of the ActivityPub library. I just finished reading the spec, it appears that we'll need some interesting data models and maybe some special JSON parsing setup to handle the multiple types of requests/responses specified by ActivityPub. We will also need extension methods to support configuring this with minimal APIs and the WebApplicationBuilder.
Describe the solution you'd like
I think the first step to implementing this will be to move everything into a project named ActivityPub with a structure similar to the following:
ActivityPub
├── Objects
│ ├── Object.cs
│ ├── Context.cs
│ └── Identifier.cs
├── Actors
│ └── Actor.cs
├── Collections
│ ├── Collection.cs
│ ├── OrderedCollection.cs
│ └── CollectionTypes.cs
└── Activities
├── Activity.cs
├── ActivityTypes.cs
└── Types
├── CreateActivity.cs
├── UpdateActivity.cs
├── DeleteActivity.cs
├── FollowActivity.cs
├── AddActivity.cs
├── RemoveActvitiy.cs
├── LikeActivity.cs
├── BlockActivity.cs
├── UndoActivity.cs
├── AcceptActivity.cs
├── RejectActivity.cs
└── AnnounceActivity.cs
Describe alternatives you've considered
Another option would be to create separate projects for the ActivityPub models and the AspNetCore configuration. Right now, we just need the models, so maybe start out with that project and decide how to evolve in the future.