ActivityPub
a decentralized social networking protocol
Facebook Friends
Twitter Followers
YouTube Subscribers
TikTok Followers
I'm old enough to remember when the Internet wasn't a group of five websites, each consisting of screenshots of text from the other four.
– Tom Eastman, 2018
Why is this a problem?
For most of the last 15 years, the social web has felt like a settled market – and then Elon Musk bought Twitter
What are the alternatives?
Facebook Friends
Twitter Followers
YouTube Subscribers
TikTok Followers
Don't you miss the days when the web really was the world's greatest decentralized network? Before everything got locked down into a handful of walled gardens?
Enter ActivityPub! ActivityPub is a decentralized social networking protocol based on the ActivityStreams 2.0 data format. ActivityPub is an official W3C recommended standard published by the W3C Social Web Working Group. It provides a client to server API for creating, updating and deleting content, as well as a federated server to server API for delivering notifications and subscribing to content.
ActivityPub
So what can you do with it?
Messages
{
"@context": "https://www.w3.org/ns/activitystreams",
"summary": "Martin created an image",
"type": "Create",
"actor": "http://www.test.example/martin",
"object": "http://example.org/foo.jpg"
}
Activity Types
Accept
Add
Announce
Arrive
Block
Create
Delete
Dislike
Flag
Follow
Ignore
Invite
Join
Leave
Like
Listen
Move
Offer
Question
Reject
Read
Remove
TentativeReject
TentativeAccept
Travel
Undo
Update
View
{
"@context": "https://.../ns/as",
"summary": "Sally went home from work",
"type": "Travel",
"actor": {
"type": "Person",
"name": "Sally"
},
"target": {
"type": "Place",
"name": "Home"
},
"origin": {
"type": "Place",
"name": "Work"
}
}
Where is it used?
Service | Application |
Microblogging | |
Publishing | |
Sharing Knowledge | Drupal, SkoHub, OLKI (science), openEngiadina |
Sharing Media | |
Sharing Events | |
Sharing Links | |
Sharing Code |
Who is using it?
Challenges
Want to know more?