Fediverso/README.md

11 KiB

Awesome Fediverse 🛰😎

A curated, collaborative list of awesome Fediverse resources for getting ramped up in the Fediverse.

What's the fediverse?

The Fediverse is a network of social networking applications that communicate with each other via a set of protocols. The servers hosting an appplication are called an node or instance and can host multiple users.

Here are some resources to get you started:

Applications

These products rule the fediverse.

  • Mastodon - Ruby based twitter clone - Follow friends and discover new ones among more than 2M people. Publish anything you want: links, pictures, text, video. All on a platform that is community-owned and ad-free.
  • PixelFed - PHP based instagram clone. A free and ethical photo sharing platform.
  • Peertube - Javascript based youtube clone. A decentralized video hosting network, based on free/libre software
  • Matrix
  • Movim - Social Network based on XMPP
  • Soundstorm Soundstorm is an audio-oriented federated social network that speaks ActivityPub. Users can upload their own music, comment on others' tracks, and like/follow/mention just as in a regular social network. Since it speaks the same language as federated platforms like Mastodon, Soundstorm can send new track upload posts to users' followers on the fediverse, allowing them to gain a greater reach than a conventional social audio service.
  • Prismo - A ruby based reddit clone. Federated link aggregation powered by ActivityPub.
  • Plemora
  • Diaspora - Ruby based Facebook clone.
  • WriteFriendly - Go based publihsing platform. WriteFreely is free and open source software for starting a minimalist, federated blog — or an entire community.
  • Friendica - PHP based facebook clone. Friendica is a decentralised communications platform that integrates social communication. Our platform links to independent social projects and corporate services.
  • Hubzilla
  • FunkWhale - Python based Grooveshark. A self-hosted tribute to Grooveshark.com.
  • Cobalt - Ruby Video platform by same owner as Mastodon
  • ActivityPub for WordPress - An ActivityPub plugin for WordPress.

Protocols

The fediverse is made up of a bunch of protocols. Below are the most used ones.

  • ActivityPub - The ActivityPub protocol is a decentralized social networking protocol 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.
  • Litepub - LitePub is a suite of protocols which provide a federated social network. They constitute various profiles of the ActivityPub specification. It is intended that LitePub implementations provide compatibility with ActivityPub, but there are some core behavioral differences.
  • Diaspora - The purpose of this document is to specify the communications that go on between diaspora* servers (and other servers supporting this protocol)
  • WebMention - Webmention is a web standard for mentions and conversations across the web, a powerful building block that is used for a growing federated network of comments, likes, reposts, and other rich interactions across the decentralized social web.
  • Zot - Zot is the revolutionary protocol that powers Hubzilla, providing communications, identity management, and access control across a fully decentralised network of independent websites, often called "the grid". The resulting platform is a robust system that supports privacy and security while enabling the kind of rich web services typically seen only in centralized, proprietary solutions.
  • OStatus - OStatus is a minimal specification for distributed status updates or microblogging. Many social applications can be modelled with status updates, however. Practically any software that generates RSS or Atom feeds could be OStatus-enabled. Travel networks, event invitation systems, wikis, photo-sharing systems, social news sites, social music sites, podcasting servers, blogs, version control systems, and general purpose social networks would all be candidates for OStatus use.
  • Friendica - The Portable Contacts specification is designed to make it easier for developers to give their users a secure way to access the address books and friends lists they have built up all over the web.
  • Portable Contacts - The Portable Contacts specification is designed to make it easier for developers to give their users a secure way to access the address books and friends lists they have built up all over the web. Specifically, it seeks to create a common access pattern and contact schema that any site can provide, well-specified authentication and access rules, standard libraries that can work with any site, and absolutely minimal complexity, with the lightest possible toolchain requirements for developers.
  • WebFinger - WebFinger is used to discover information about people or other entities on the Internet that are identified by a URI using standard Hypertext Transfer Protocol (HTTP) methods over a secure transport. A WebFinger resource returns a JavaScript Object Notation (JSON) object describing the entity that is queried. The JSON object is referred to as the JSON Resource Descriptor (JRD).
  • Salmon - The Salmon Protocol is a message exchange protocol running over HTTP designed to decentralize commentary and annotations made against newsfeed articles such as blog posts. It allows a single discussion thread to be established between the article's origin and any feed reader or "aggregator" which is subscribing to the content. Put simply, that if an article appeared on 3 sites: A (the source), B and C (the aggregates), that members of all 3 sites could see and contribute to a single thread of conversation regardless of site they were viewing from.
  • ActivityStreams - This specification details the serialization of a stream of social activities using the JSON format. Activities are important in that they allow individuals to process the latest news of people and things they care about.
  • Magic Signatures - This document defines a lightweight, robust mechanism for digitally signing nearly arbitrary messages, along with a simple public key infrastructure.
  • DFRN - The DFRN (pronounced dee-fern) framework provides the communication basis for a decentralised social network - where cooperating servers share information on your behalf while operating in a web of trust relationships you control. It can provide a “Facebook-like” experience without requiring a central company or server.
  • WebSub - WebSub provides a common mechanism for communication between publishers of any kind of Web content and their subscribers, based on HTTP web hooks. Subscription requests are relayed through hubs, which validate and verify the request. Hubs then distribute new and updated content to subscribers when it becomes available. WebSub was previously known as PubSubHubbub.
  • PubSubHubbub - PubSubHubbub is an open protocol for distributed publish/subscribe communication on the Internet. It generalizes the concept of webhooks and allows data producers and data consumers to work in a decoupled way.
  • Pubcast - An experimental ActivityPub based podcasting platform
  • Pubgate - Lightweight (Gotta Go Fast) ActivityPub federator

Sites

Resources

Activitypub

Talk
Developers

Misc

Videos

Meetups

TODO

Slides

TODO