How we rank
Every tool gets a 0–100 score per use case:
score = 0.6 × fit + 0.2 × github + 0.2 × hn github = min(100, 20 × log10(stars)) // 10k★ → 80, 100k★ → 100 hn = min(100, 33 × log10(1 + stories90d)) // 10 → 34, 100 → 66, 1000 → 99
- fit: an editorial estimate of how well the tool solves that use case. It is a judgement call, not a measured stat, and is labeled "estimated" everywhere.
- github: live stargazer count from the public GitHub API.
- hn: number of Hacker News stories matching the tool's name in the last 90 days (Algolia HN Search API). Common-word names (e.g. "Cursor", "Runway") can pick up unrelated stories, and phrase matching misses some mentions, so treat this as a rough buzz signal.
- If a signal doesn't apply (closed-source tool), its weight is shared among the remaining components.
- Sponsored or featured placements are labeled "Sponsored" and never change scores.
Machine-readable: /api/tools.json, /llms-full.txt.