Skip to main content

Track GitHub trending repositories with ScrapeOps & Google Sheets

Workflow preview

Workflow preview
100%
Track GitHub trending repositories with ScrapeOps & Google Sheets preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

This n8n template tracks GitHub Trending repositories (daily/weekly/monthly), parses the trending page into structured data (rank, repo name, stars, language, etc.), and stores results in Google Sh...

Best for

  • Market Research automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.scheduletrigger, n8n-nodes-base.code, n8n-nodes-base.splitinbatches, @scrapeops/n8n-nodes-scrapeops.scrapeops, n8n-nodes-base.wait, n8n-nodes-base.googlesheets, n8n-nodes-base.stickynote, n8n-nodes-base.set

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Ian Kerins.

Original n8n.io source

1.1 Workflow description

Title
Track GitHub trending repositories with ScrapeOps & Google Sheets
Workflow name
Track GitHub trending repositories with ScrapeOps & Google Sheets

Overview

This n8n template tracks GitHub Trending repositories (daily/weekly/monthly), parses the trending page into structured data (rank, repo name, stars, language, etc.), and stores results in Google Sheets with automatic deduping. It’s designed for teams who want a simple “trending feed” for engineering research, developer tooling discovery, and weekly reporting.

Who is this for?

  • Developers, PMs, DevRel, and tooling teams who want a lightweight trend radar
  • Anyone building a curated list of fast-rising open source projects
  • Teams who want Sheets-based tracking without manual copy/paste

What problems it solves

  • Automatically collects GitHub Trending data on a schedule
  • Prevents duplicate rows using a stable dedupe_key
  • Updates existing rows when values change (rank/stars/score)

How it works

  1. A schedule triggers the workflow.
  2. Inputs define the trending window (daily, weekly, or monthly) and optional languages.
  3. ScrapeOps fetches the GitHub Trending HTML reliably.
  4. The workflow parses repositories and ranks from the HTML.
  5. Cleaned rows are written to Google Sheets using Append or Update Row matching on dedupe_key.

Setup steps (~5–10 minutes)

  1. ScrapeOps
  1. Google Sheets
  • Duplicate this sheet/create a Sheet and add a trending_raw tab.
  • Add columns used by the workflow (e.g. captured_at, since, source_url, rank_on_page, full_name, repo_url, stars_total, forks_total, stars_in_period, score, dedupe_key).
  • In the Google Sheets node, choose Append or Update Row and set Column to match on = dedupe_key.
  1. Customize
  • Change since to daily/weekly/monthly in the Inputs node.
  • Add languages via languages_csv (example: any,python,go,rust).
  • Adjust delay if needed.

Pre-conditions

  • ScrapeOps account + API key configured in n8n
  • Google Sheets credentials connected in n8n
  • A Sheet tab named trending_raw with matching columns

Disclaimer

This template uses ScrapeOps as a community node. You are responsible for complying with GitHub’s Terms of Service, robots directives, and applicable laws in your jurisdiction. Scraping targets can change at any time; you may need to update wait times and parsing logic accordingly. Use responsibly for legitimate business purposes.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Cron (daily/weekly)

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1

Block 2 - Build URLs

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 3 - Split URLs (loop)

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 2

Block 4 - ScrapeOps: Fetch HTML

Type / Role
@scrapeops/n8n-nodes-scrapeops.ScrapeOps - ScrapeOps
Config choices
Version 1

Block 5 - Polite Delay

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1

Block 6 - Extract Trending Repos

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 7 - Normalize + Enrich-from-page

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 8 - Write to Google Sheets (raw tab)

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 9 - Write to Google Sheets (weekly tab)

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 10 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 11 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 12 - Set Inputs

Type / Role
n8n-nodes-base.set - set
Config choices
Version 2

Block 13 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 14 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 15 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 16 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 17 - Read raw (for weekly)

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 3

Block 18 - Generate Weekly

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

3. Summary Table

Workflow Track GitHub trending repositories with ScrapeOps & Google Sheets
Complexity advanced
Nodes 18
Categories Market Research
Author Ian Kerins
Published 11 Dec 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/11706/11706.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Track GitHub trending repositories with ScrapeOps & Google Sheets do?

This n8n template tracks GitHub Trending repositories (daily/weekly/monthly), parses the trending page into structured data (rank, repo name, stars, language, etc.), and stores results in Google Sh...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Market Research use case.