📈 GH Trending Explorer 🎲 Surprise me

← all repos

twitter / the-algorithm

git clone https://github.com/twitter/the-algorithm.git 🔥 on GitHub Trending today

Source code for the X Recommendation Algorithm

+2
stars, 24h · #514
—
stars, 7 days
—
stars, 30 days
74k
★ total
13k
forks · 336 open issues

Star history starts 2026-10-20; the chart appears after the second daily snapshot.

LanguageScala
LicenseAGPL-3.0
Created2023-03-27 (3y ago)
Last push1y ago
Watchers415
OwnerOrganization

Seen on GitHub Trending

  • 2026-10-20 — #9 daily in scala · +2 ★

Links

README excerpt
# X's Recommendation Algorithm
X's Recommendation Algorithm is a set of services and jobs that are responsible for serving feeds of posts and other content across all X product surfaces (e.g. For You Timeline, Search, Explore, Notifications). For an introduction to how the algorithm works, please refer to our engineering blog.
## Architecture
Product surfaces at X are built on a shared set of data, models, and software frameworks. The shared components included in this repository are listed below:
| Type | Component | Description |
|------------|------------|------------|
| Data | tweetypie | Core service that handles the reading and writing of post data. |
| | unified-user-actions | Real-time stream of user actions on X. |
| | user-signal-service | Centralized platform to retrieve explicit (e.g. likes, replies) and implicit (e.g. profile visits, tweet clicks) user signals. |
| Model | SimClusters | Community detection and sparse embeddings into those communities. |
| | TwHIN | Dense knowledge graph embeddings for Users and Posts. |
| | trust-and-safety-models | Models for detecting NSFW or abusive content. |
| | real-graph | Model to predict the likelihood of an X User interacting with another User. |
| | tweepcred | Page-Rank algorithm for calculating X User reputation. |
| | recos-injector | Streaming event processor for building input streams for GraphJet based services. |
| | graph-feature-service | Serves graph features for a directed pair of users (e.g. how many of User A's following liked posts from User B). |
| | topic-social-proof | Identifies topics related to individual posts. |
| | representation-scorer | Compute scores between pairs of entities (Users, Posts, etc.) using embedding similarity. |
| Software framework | navi | High performance, machine learning model serving written in Rust. |
| | product-mixer | Software framework for building feeds of content. |
| | timelines-aggregation-framework | Framework for generating aggregate features in batch or real time. |
| | representation-manager | Service to retrieve embeddings (i.e. SimClusers and TwHIN). |
| | twml | Legacy machine learning framework built on TensorFlow v1. |
The product surfaces currently included in this repository are the For You Timeline and Recommended Notifications.
### For You Timeline
The diagram below illustrates how major services and jobs interconnect to construct a For You Timeline.
The core components of the For You Timeline included in this repository are listed below:
| Type | Component | Description |
|------------|------------|------------|
| Candidate Source | search-index | Find and rank In-Network posts. ~50% of posts come from this candidate source. |
| | tweet-mixer | Coordination layer for fetching Out-of-Network tweet candidates from underlying compute services. |
| | user-tweet-entity-graph (UTEG)| Maintains an in memory User to Post interaction graph, and finds candidates based on traversals of this graph. This is built on the GraphJet frame