dahlia / fedify

ActivityPub server framework in TypeScript
https://fedify.dev/
MIT License
327 stars 13 forks source link

Support for attachment lists on actors (Mastodon profile fields) #29

Closed jfietkau closed 3 months ago

jfietkau commented 3 months ago

Mastodon uses the attachment property on actors for a list of profile fields, documented here. This property is pretty widely adopted by other ActivityPub-based social platforms.

It would be helpful if Fedify could provide a way to specify these profile fields for its actors. If I understand it correctly, it is not currently possible to add this property manually while using Fedify for federation.

Note: The Mastodon web GUI limits users to a maximum of four profile fields, but to my knowledge the number of fields that federated profiles may have is not limited.

dahlia commented 3 months ago

You can test PropertyValue now with 0.5.0-dev.96+12a69dc0:

new Person({
  attachments: [
    new PropertyValue({ name: "Pronoun", value: "they/them" }),
    new PropertyValue({ name: "Website", value: '<a href="https://hongminhee.org/">hongminhee.org</a>' }),
  ]
})

Note that Mastodon puts HTML into the value field so that URLs are hyperlinked.