Jan Vlnas, May 29th 2024
jan.vlnas.cz
👋
👋
🙋
I have a choice
I can engage on my terms
I don't need to trust another platform
I don't need this bulls**t
Tweetbot by Tapbots
2011—2023
Twitterific by Iconfactory
2007—2023
Ivory for Mastodon
by Tapbots
Project Tapestry by Iconfactory
“The ActivityPub protocol is a decentralized social networking protocol […]”
ActivityPub
W3C Recommendation, January 2018
Centralized services
Centralized services
Federated services
Federated services
threads.net
pixelfed.fr
social.bbc
fedi.video
*.wordpress.com
retrolemmy.com
write.as
infosec.press
literature.cafe
witter.cz
gram.social
threads.net
pixelfed.fr
social.bbc
fedi.video
*.wordpress.com
retrolemmy.com
write.as
infosec.press
literature.cafe
witter.cz
gram.social
threads.net
pixelfed.fr
social.bbc
fedi.video
*.wordpress.com
retrolemmy.com
write.as
infosec.press
literature.cafe
witter.cz
gram.social
(alternative UIs)
Microblogging (Mastodon, Misskey, Pleroma, Friendica…)
Blogging (WriteFreely, WordPress plugin, Ghost.org*)
Discussion forums (Lemmy, mbin, NodeBB, Discourse…)
Media sharing (Pixelfed, PeerTube, Funkwhale, Owncast…)
Book reviews (BookWyrm)
Podcasts hosting (Castopod)
Follow
Publish
React
View
Microblogging (Mastodon, Misskey, Pleroma, Friendica…)
Blogging (WriteFreely, WordPress plugin, Ghost.org*)
Discussion forums (Lemmy, mbin, NodeBB, Discourse…)
Media sharing (Pixelfed, PeerTube, Funkwhale, Owncast…)
Book reviews (BookWyrm)
Podcasts hosting (Castopod)
“Our dream for the fediverse is a world in which you don't have to make a screenshot to share something from one network into another network. The fediverse is all one big network.
It's all connected.”
Evan Prodromou
co-author of ActivityPub and ActivityStreams 2.0
“The Verge and 404 Media are building out new functions that would allow them to distribute posts on their sites and on federated platforms […]. Replies to those posts on those platforms become comments on their sites.
Why publishers are preparing to federate their sites
Sara Guaglione, Digiday, May 24 2024
[…] Instead of spending time building a presence on other platforms for their benefit, a publisher can do that on their own sites — while giving readers the ability to see those posts on other federated platforms.”
“The ActivityPub protocol is a decentralized social networking protocol
ActivityPub
W3C Recommendation, January 2018
based upon the ActivityStreams 2.0 data format. 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 content.”
Activity
Actor
Verb
“Create”
Object
of type “Note”
Activity
Actor
Verb
“Follow”
Object
of type “Actor”
Activity
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Note",
"to": ["https://www.w3.org/ns/activitystreams#Public"],
"attributedTo": "https://social.example/alice/",
"content": "Hello world!"
}
Object of type “Note”
{
"type": "Note",
"to": ["https://www.w3.org/ns/activitystreams#Public"],
"attributedTo": "https://social.example/alice/",
"content": "Hello world!"
}
“Create” activity
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Create",
"id": "https://social.example/alice/posts/123",
"to": ["https://www.w3.org/ns/activitystreams#Public"],
"actor": "https://social.example/alice/",
"object":
}
“Create” activity with object reference
{
"@context": "https://www.w3.org/ns/activitystreams",
"type": "Create",
"id": "https://social.example/alice/posts/123",
"to": ["https://www.w3.org/ns/activitystreams#Public"],
"actor": "https://social.example/alice/",
"object": "https://social.example/alice/posts/abcdef"
}
Activity Streams
JSON-LD
ActivityPub
WebFinger
RFC 9421
HTTP Message Signatures
@webexpo@mastodon.social
https://mastodon.social/.well-known/webfinger
?resource=acct:webexpo%40mastodon.social
inbox
inbox
inbox
(outbox)
FediTest
FEPs
(Fediverse Enhancement Proposals)
Creating an activity
Sending a reply
bitoff.org/ap
jan.vlnas.cz
@jnv@bitoff.org