Find SF-based companies with active open source projects worth contributing to.
scrapers/ -> data/raw/*.csv -> normalize -> data/companies.csv -> github_score -> data/ranked.csv
pip install -r requirements.txt
cp .env.example .env
# add your GITHUB_TOKEN to .envpython run.py # run everything
python run.py scrape # all scrapers only
python run.py normalize # merge + SF-filter raw csvs
python run.py score # GitHub enrichment + ranking
python run.py hn # individual: hn_hiring
python run.py todo # individual: todo_ospo
python run.py oc # individual: opencollective
python run.py kv # individual: keyvalues
python run.py gh # individual: github_sponsors| Name | Source | Notes |
|---|---|---|
hn |
HN "Who is hiring?" 2022-2026 via Algolia | SF-filtered at scrape time |
todo |
TODO Group OSPO landscape.yml | Location enriched later |
oc |
Open Collective GraphQL | SF-filtered at scrape time |
kv |
keyvalues.com directory | SF-filtered at scrape time |
gh |
GitHub Sponsors via seed crawl | Location enriched later |
data/ranked.csv is sorted by contributability score:
score = external_pr_authors_90d * 10
+ good_first_issues * 3
+ min(repo_count, 50)
+ recent_commits_90d * 0.1
The external_pr_authors_90d metric is the strongest signal — it tells you
the company actually merges PRs from outside contributors.