AT Protocol: Difference between revisions

From ATProto Wiki
mNo edit summary
No edit summary
Line 2: Line 2:


== Design ==
== Design ==
The protocol is comprised of three main components: Personal Data Servers (PDSes), relays, and AppViews.
The protocol is comprised of three main components: ''Personal Data Servers (PDSes)'', ''relays'', and ''AppViews''.


* '''[[Personal Data Servers (PDSes)|PDSes]]''' are the entry points for users into the network. Apart from hosting user [[records]] in personal data repositories, PDSes handle communication between the user and other protocol components, account login, and cryptographic signing of sensitive data. PDSes are designed to be computationally inexpensive to run, allowing individual users to self-host their accounts with minimal expense.
* '''[[Personal Data Servers (PDSes)|PDSes]]''' are the entry points for users into the network. Apart from hosting user [[records]] in personal data repositories, PDSes handle communication between the user and other protocol components, account login, and cryptographic signing of sensitive data. PDSes are designed to be computationally inexpensive to run, allowing individual users to self-host their accounts with minimal expense.

Revision as of 20:36, 11 March 2025

The AT Protocol (Pronounced "@-protocol" and often shortened to ATProto) is a communication protocol aimed at facilitating distributed social networking. The protocol is currently under development by Bluesky Social, a private public benefit corporation in the United States. It is the protocol used by Bluesky, among other smaller projects.

Design

The protocol is comprised of three main components: Personal Data Servers (PDSes), relays, and AppViews.

  • PDSes are the entry points for users into the network. Apart from hosting user records in personal data repositories, PDSes handle communication between the user and other protocol components, account login, and cryptographic signing of sensitive data. PDSes are designed to be computationally inexpensive to run, allowing individual users to self-host their accounts with minimal expense.
  • Relays crawl PDSes from across the network, indexes and aggregates new records within user repositories, and outputs a firehose of records for services within the network to freely use. This data stream is "locked open", meaning any actor can consume the datastream for any given purpose.
  • AppViews are the front-facing applications within the AT Protocol, comprising what users would understand as "social media applications". AppViews can serve a variety of uses and can take many forms, but all AppViews share a few common characteristics. AppViews consume and process raw data from the Firehose to serve relevant content to end-users. They define and/or use particular lexicons for records uploaded or displayed to users.

Bluesky claims that the protocol's design was inspired by the open web itself, wherein small network entry points are aggregated and broadcast across the network by a smaller number of "big-world" aggregators. This reduces load on services used by individual users (such as PDSes), allows individual developers to easily tap into the entire network to build novel services, and significantly improves user and content discoverability compared to other decentralized social media protocols such as ActivityPub.