GitHub Trending Repositories Scraper avatar

GitHub Trending Repositories Scraper

Pricing

from $1.20 / 1,000 repositories

Go to Apify Store
GitHub Trending Repositories Scraper

GitHub Trending Repositories Scraper

Scrapes github.com/trending: the daily, weekly or monthly trending repositories or developers, by programming language and spoken language. One row per repo or developer with stars, forks, stars-in-period and description — no API key, no proxies.

Pricing

from $1.20 / 1,000 repositories

Rating

0.0

(0)

Developer

Murat Uzun

Murat Uzun

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Share

GitHub Trending Repositories Scraper is an Apify Actor that reads github.com/trending and github.com/trending/developers and turns them into structured rows — no API key, no proxies, no headless browser. Give it one or more programming-language slugs (or leave a row empty for all languages), a time range (daily, weekly or monthly) and a mode, and it returns one row per trending repository with stars, forks, stars gained in the period and top contributors, or one row per trending developer with their popular repo. Runs on Apify's schedule, webhook and API infrastructure, so a daily "what's trending in Rust" digest is a five-minute setup.

  • Developer-relations and open-source teams track which languages and repositories are gaining stars fastest, per day, week or month.
  • VCs and tech scouts watch trending developers and repositories across languages like Python, Rust or TypeScript to spot early signal before it hits mainstream tech press.
  • Newsletter and content curators automate a "GitHub Trending Today" digest instead of checking the page by hand every morning.
  • Competitive and market research compares stars-in-period across a watchlist of languages on a recurring schedule.
  1. Fill Programming languages with GitHub language slugs, e.g. javascript, python, rust — one per line — or leave a row empty to include trending across all languages.
  2. Set Time range to daily, weekly or monthly, matching the tabs on github.com/trending.
  3. Optionally set Spoken language (a two-letter code like en or ja) to match GitHub's "Spoken Language" filter.
  4. Choose Mode: repositories for github.com/trending, or developers for github.com/trending/developers.
  5. Click Start and export the dataset as JSON, CSV, Excel or HTML from the Output tab.

Example input

{
"languages": ["", "javascript", "rust"],
"since": "weekly",
"mode": "repositories",
"maxResults": 25
}

Example output

{
"rank": 1,
"owner": "JustVugg",
"repo": "colibri",
"fullName": "JustVugg/colibri",
"url": "https://github.com/JustVugg/colibri",
"description": "Run frontier MoE models on hardware you already own — pure C, zero deps, experts streamed from disk.",
"language": "C",
"languageColor": "#555555",
"stars": 29487,
"forks": 3214,
"starsInPeriod": 960,
"builtBy": ["JustVugg", "claude", "ZacharyZcR"],
"since": "daily",
"queryLanguage": "",
"error": null,
"scrapedAt": "2026-09-13T00:00:00.000Z"
}

Data table

GitHub Trending Repositories Scraper extracts up to 21 fields per row (repositories and developers share one dataset shape — unused fields for the chosen mode stay null):

FieldTypeDescription
ranknumberPosition on the trending page, 1-based
owner, repo, fullName, urlstringRepository owner, name, owner/repo and its GitHub page (repositories mode)
username, name, avatarstringDeveloper handle, display name and avatar image (developers mode)
descriptionstringRepository description (repositories mode)
language, languageColorstringPrimary language and GitHub's hex color for it (repositories mode)
stars, forks, starsInPeriodnumberTotal stars, total forks and stars gained in the selected window (repositories mode)
builtByarrayUsernames of the top contributors shown on the trending card (repositories mode)
popularRepo, popularRepoDescriptionstringThe developer's most popular repo right now and its description (developers mode)
sincestringdaily, weekly or monthly — the requested time range
queryLanguage, error, scrapedAtstringThe languages entry that produced this row, any failure reason and the run timestamp

Input parameters

ParameterTypeDefaultDescription
languagesarray[""]Language slugs, or an empty row for all languages
sincestringdailydaily, weekly or monthly
spokenLanguagestring(empty)Two-letter spoken-language filter, e.g. en
modestringrepositoriesrepositories (github.com/trending) or developers (github.com/trending/developers)
maxResultsinteger25Max rows per language entry (1-100)

Pricing

GitHub Trending Repositories Scraper uses pay-per-event pricing: $0.001 per result row, plus a negligible actor-start fee. Scraping all-languages trending (about 25 repositories) costs around two and a half cents; three language entries in repositories mode cost roughly seven and a half cents. Set Maximum cost per run and the Actor trims the work to what the budget covers instead of overspending.

github.com/trending shows one language and one time range at a time, with no export button. This Actor takes a whole watchlist of languages — plus daily, weekly or monthly windows — and returns one flat, typed row per repository or developer, ready to schedule, join with other data or feed into a newsletter or dashboard.

GitHub Trending Repositories Scraper is pay-per-event with limited permissions — the two requirements for an Actor to be callable through the Apify MCP server at mcp.apify.com. An agent passes a list of languages and a time range and gets structured trending rows back, ready to summarise what's rising in a given ecosystem right now.

FAQ

Does this need a GitHub API token? No. It reads the public github.com/trending HTML page directly — the same page a signed-out visitor sees — with no authentication and no GitHub API rate limits involved.

What happens if I enter a language GitHub doesn't recognise? GitHub answers with HTTP 200 and an empty results page rather than an error. This Actor detects that and returns one row for that language with error explaining nothing was found, instead of silently skipping it.

Why are some fields null? The dataset uses one shared row shape for both modes: a repositories-mode row leaves username, name, avatar, popularRepo and popularRepoDescription null, and a developers-mode row leaves owner, repo, description, language, stars, forks, starsInPeriod and builtBy null.

Why is builtBy sometimes an empty array? Not every trending repository shows a "Built by" contributor list — smaller or single-author repos often omit it. An empty array means the page had no such section, not a parsing failure.

What are the limitations? GitHub's trending page itself lists at most 25 repositories or developers per language and time range — maxResults above that simply returns everything the page has. languageColor is only present when GitHub has an assigned color for that language.

Is this legal to run? Yes. github.com/trending is a public, unauthenticated page intended for browsing, and this Actor extracts only what is already publicly displayed there — no personal account data beyond publicly visible usernames and avatars.

Part of the webdatatools web-intelligence suite — every Actor is pay-per-event, reads public data without a login, and returns one clean row per entity:

Browse the whole suite at webdatatools, or call ten of these Actors straight from Claude, Cursor or Cline with the webdatatools MCP server.

Website & domain intelligence

Content for AI, LLMs and RAG

Search, video and social

Leads, jobs and company data

Developer, app and research data

Support and feedback

Found a language slug or page-layout edge case it should handle better? Open an issue on the Issues tab.