Pages / #bluesky / #at-protocol
Bluesky custom feeds
On Bluesky anyone can publish a feed generator, a service that picks and orders posts, so readers choose their timeline's algorithm instead of getting one master feed.
Pick a feedInteractive
- Custom feeds launched
- May 2023
- Following feed
- Chronological
- Discover feed
- Default, algorithmic
- Who can build a feed
- Anyone
- A generator returns
- A list of post URIs
- Protocol
- AT Protocol
How a custom feed is served
In words
A marketplace of algorithms
4/4
Bluesky set out to replace one company's "master algorithm" with an open "marketplace of algorithms" 1. Anyone can create a feed, and users can swap the defaults for ones others built 2. Besides the chronological Following feed and the default Discover feed 3, people subscribe to feeds of only cat pictures or only posts from their mutuals 4. Compare the single ranked stream of the X recommendation algorithm or the TikTok For You feed.
4 of 4 quotes found in their sources
-
Algorithmic choice (Bluesky blog, March 2023) bsky.social
We aim to replace the conventional "master algorithm," controlled by a single company, with an open and diverse "marketplace of algorithms."
Quote found in the source -
Algorithmic Choice with Custom Feeds (Bluesky blog, July 2023) bsky.social
On Bluesky, anyone can create a feed
Quote found in the source -
Welcome to Bluesky! (Bluesky blog, September 2024) bsky.social
Outside of your chronological Following feed and the default Discover feed, you can try out some new feeds!
Quote found in the source -
Algorithmic Choice with Custom Feeds (Bluesky blog, July 2023) bsky.social
Whether you want to subscribe to a feed of only cat pictures or to posts from only your mutuals, this is possible.
Quote found in the source
How a feed generator works
5/5
A feed generator receives a request from a user's server and answers with a list of post URIs 1; that server then hydrates them into full posts 2. The service is identified by a DID, and each algorithm it hosts is declared by a record in its creator's repository 3. Most generators read the network's firehose, which sends every published record 4, and can drop anything older than 48 hours 5.
5 of 5 quotes found in their sources
-
Feeds (AT Protocol docs) atproto.com
the server receives a request from a user's server and returns a list of post URIs with some optional metadata attached
Quote found in the source -
Feeds (AT Protocol docs) atproto.com
Those posts are then hydrated into full views by the requesting server and sent back to the client.
Quote found in the source -
Feeds (AT Protocol docs) atproto.com
The service itself is identified by DID, while each algorithm that it hosts is declared by a record in the repo of the account that created it.
Quote found in the source -
Feeds (AT Protocol docs) atproto.com
This websocket will send you every record that is published on the network.
Quote found in the source -
Feeds (AT Protocol docs) atproto.com
you can likely garbage collect any data that is older than 48 hours from your feed
Quote found in the source
Discover, the default
3/3
Discover mixes what is trending across the network with posts from accounts you follow and accounts near your social graph 1. If you don't like it, you can remove it and pin any other custom feed in its place 2. Behind every feed, relays collect updates from many servers into a single firehose 3, the stream feed generators index.
3 of 3 quotes found in their sources
-
Algorithmic Choice with Custom Feeds (Bluesky blog, July 2023) bsky.social
The initial version of Discover mixes in a global view of what's trending in the network with posts from accounts you follow and posts from accounts near your social graph.
Quote found in the source -
Algorithmic Choice with Custom Feeds (Bluesky blog, July 2023) bsky.social
If you don't like our default Discover feed, you can simply remove it and replace it with any other custom feed.
Quote found in the source -
Protocol overview (AT Protocol docs) atproto.com
Relays collect data updates from many servers in to a single firehose.
Quote found in the source