Project 1 - Implement ActivityStreams extensions #81
warriordog
started this conversation in
Projects
Replies: 1 comment
-
Current status:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Project 1 - Implement ActivityStreams extensions
Overview & Background:
This project aims to implement full support for ActivityStreams extensions. Extensions are way to define custom properties and types that extend the base ActivityStreams and ActivityPub specifications. Each extension uses a unique JSON-LD context to define its changes and ensure that other applications can properly handle the custom data.
Extensions, while technically optional, are a key component of ActivityPub, especially for projects that aim to integrate with existing Fediverse software. They are also remarkably difficult to implement in statically typed languages like C#, due to their support for:
None of these features are supported natively in C#, which requires this implementation to emulate them. Doing this properly requires a careful balance between developer experience, spec compliance, performance, type safety, and complexity. A number of research stories have been created to ensure that all key concerns are properly evaluated before moving forward with a solution.
Goals
Goals of this project are (loosely in order):
Beta Was this translation helpful? Give feedback.
All reactions