A Chrome extension that shows similar repository recommendations directly in the GitHub sidebar.
Recommendations are based on how people star repos: if users who starred repo A also tend to star repo B, those repos are likely related.
- Clone this repo:
git clone https://github.com/ysz/gh-recommendations.git
- Open
chrome://extensionsin Chrome - Enable Developer mode (top right)
- Click Load unpacked and select the cloned folder
- Open any repository on GitHub -- a "Similar Repositories" panel appears at the bottom of the sidebar
Star counts and descriptions are loaded live from GitHub.
Currently covers repositories with 100+ stars (~9K repos in the dataset).
Three signals are combined to score each recommendation:
- Co-star similarity (40%) -- collaborative filtering on star data. Two repos are similar if many of the same users starred both.
- Description embeddings (35%) -- semantic similarity of repo descriptions using Qwen3-Embedding-0.6B (1024-dim vectors).
- Topic overlap (15%) -- Jaccard similarity between GitHub topic tags.
Star data comes from GH Archive via Google BigQuery. Repo metadata comes from the GitHub REST API.
manifest.json # Chrome extension manifest
content.js # Injects recommendations into GitHub sidebar
styles.css # Minimal styling overrides
icons/ # Extension icons
data/
recommendations.json # Pre-computed recommendations (~3 MB)
engine/ # Recommendation pipeline (Python)
main.py # CLI: collect, build, recommend, evaluate
collector.py # Data collection (GitHub API + BigQuery)
graph.py # Sparse matrix construction
recommender.py # Hybrid recommendation engine
evaluate.py # Held-out evaluation (Hit Rate, MRR)
The engine/ folder contains the Python pipeline that generates data/recommendations.json. You only need this if you want to rebuild the data yourself.
cd engine
uv sync # or: pip install -e .
# Get star data from BigQuery (prints SQL to run in console.cloud.google.com)
python main.py bigquery-sql
# Load exported CSV
python main.py load-bigquery stars.csv
# Build graph + embeddings + export
python main.py build
python main.py embeddings
python main.py export-webRequires Python 3.12+.
- GH Archive -- public GitHub event data, available on Google BigQuery.
- GitHub REST API -- repository metadata. Subject to GitHub Terms of Service.
- Qwen3-Embedding-0.6B -- embedding model by Alibaba/Qwen (Apache 2.0).
MIT