GitHub Trending Repositories & Developers Scraper avatar

GitHub Trending Repositories & Developers Scraper

Pricing

from $2.00 / 1,000 repos

Go to Apify Store
GitHub Trending Repositories & Developers Scraper

GitHub Trending Repositories & Developers Scraper

Scrape GitHub Trending repositories and developers by language, period and spoken language. Optional GitHub REST enrichment for repository details.

Pricing

from $2.00 / 1,000 repos

Rating

0.0

(0)

Developer

Deepak Ganesh

Deepak Ganesh

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Security

Limited permissions

Share

GitHub Trending Repositories & Developers Scraper

Scrape public GitHub Trending pages and get structured JSON for:

  • Trending repositories: rank, owner/name, URL, description, language and color, total stars, forks, stars gained in the selected period, and "built by" contributors.
  • Trending developers: rank, username, display name, profile URL, avatar, and popular repository.
  • Filtered lists: all languages or selected language slugs, daily/weekly/monthly periods, and optional spoken language code for repositories.
  • Optional repository enrichment: GitHub REST details such as topics, license, homepage, open issues, created date, pushed date, and default branch.

The Actor uses plain HTTP requests and CheerioCrawler (no browser, no login). It handles empty/no-results pages gracefully: no result rows are emitted and you are not charged for that combination.

Use cases

  • Track fast-growing open-source repositories by language.
  • Find active GitHub developers and their current popular projects.
  • Feed agents, newsletters, dashboards or lead lists with fresh GitHub Trending data.
  • Monitor languages and ecosystems such as Python, TypeScript, Rust, Go or Java.
  • Enrich repository discovery workflows with topics, license and freshness metadata.

Input

FieldDefaultDescription
typerepositoriesrepositories, developers, or both.
languagesemptyLanguage slugs such as python, typescript, rust. Empty means GitHub's all-language list.
sincedailyTrending period: daily, weekly, or monthly.
spokenLanguageemptyOptional spoken language code for repository lists, e.g. en, zh, es.
maxItems25Maximum rows saved from each list.
includeRepoDetailsfalseCalls https://api.github.com/repos/{owner}/{repo} for repository rows. GitHub's unauthenticated REST API is limited to about 60 requests/hour, so this is off by default and stops gracefully on 403/rate limit.
maxConcurrency3Maximum GitHub Trending pages fetched in parallel.
proxyConfigurationoffOptional. Public GitHub Trending pages usually work without proxy.
{
"type": "both",
"languages": ["python", "rust"],
"since": "weekly",
"maxItems": 5,
"includeRepoDetails": false
}

Output

One dataset item is saved per repository or developer row. The dataset includes Overview, Repositories, and Developers views.

{
"itemType": "repository",
"rank": 1,
"fullName": "VectifyAI/PageIndex",
"owner": "VectifyAI",
"name": "PageIndex",
"url": "https://github.com/VectifyAI/PageIndex",
"description": "📑 PageIndex: Document Index for Vectorless, Reasoning-based RAG",
"language": "Python",
"languageColor": "#3572A5",
"stars": 38755,
"forks": 3356,
"starsInPeriod": 2860,
"period": "weekly",
"builtBy": [
{ "username": "rejojer", "avatarUrl": "https://avatars.githubusercontent.com/u/8255061?s=40&v=4" },
{ "username": "zmtomorrow", "avatarUrl": "https://avatars.githubusercontent.com/u/13518252?s=40&v=4" }
],
"scrapedAt": "2026-10-06T16:30:43.089Z",
"filters": { "type": "repositories", "language": "python", "since": "weekly", "spokenLanguage": null }
}
{
"itemType": "developer",
"rank": 1,
"username": "Ikalus1988",
"name": null,
"url": "https://github.com/Ikalus1988",
"avatarUrl": "https://avatars.githubusercontent.com/u/136884451?s=96&v=4",
"popularRepo": {
"name": "MisakaNet",
"url": "https://github.com/Ikalus1988/MisakaNet",
"description": "📚 A zero-dependency, git-backed micro-lesson library for AI Agents to asynchronously share and search verified debugging experience. | ht…"
},
"scrapedAt": "2026-10-06T16:30:42.526Z",
"filters": { "type": "developers", "language": "python", "since": "weekly", "spokenLanguage": null }
}

(Examples trimmed from a real platform test run.)

When includeRepoDetails is enabled, repository rows can also contain:

{
"details": {
"topics": ["ai", "agents"],
"license": "MIT",
"homepage": "https://example.com",
"openIssues": 12,
"createdAt": "2025-01-01T00:00:00Z",
"pushedAt": "2026-10-06T00:00:00Z",
"defaultBranch": "main"
}
}

Pricing

Pay per event: you only pay for result rows.

EventPriceWhen
Repo (repo-scraped)$0.002 ($2.00 per 1,000 Repos)Each repository or developer row successfully pushed to the dataset. Developer rows use the same event so one result row has one predictable price.

Empty/no-results pages, blocked pages, failed requests, and skipped repository-detail API calls are free. The Actor respects your maximum cost per run: it caps work to the number of result events your budget allows and stops cleanly when the limit is reached.

FAQ

Does this use a GitHub login?
No. It reads public GitHub Trending HTML and optionally public unauthenticated GitHub REST API endpoints.

Why is includeRepoDetails disabled by default?
GitHub limits unauthenticated REST requests to about 60 per hour. If GitHub returns 403/rate-limit, the Actor logs a warning, stops detail calls, and continues saving basic repository rows.

Do I get charged for pages with no results?
No. No rows are pushed for empty lists, and billing only happens when a repository or developer row is saved.

Can I scrape both repositories and developers?
Yes. Set type to both. The same repo-scraped event is charged for each repository or developer result row.

Is this legal?
The Actor reads public pages like a browser. You are responsible for using the data in compliance with applicable laws and GitHub's terms.

Changelog

  • 0.1: Initial release. Scrapes GitHub Trending repositories and developers, supports language/period/spoken-language filters, robust number parsing, no-results handling, and optional GitHub REST repository details.