n8n

How to Capture GitHub Trends for Content Research?

Get a clean, structured list of trending GitHub repositories in seconds. Marketers, product leads, and content writers can quickly spot topics, tools, and projects that audiences care about. Run it on demand to capture repo titles, languages, and short descriptions for fast research.

The flow begins with a manual trigger, then an HTTP request loads the GitHub trending page. An HTML step isolates the main content box, another HTML step collects every repository row, and a split step turns that group into individual items. For each item, the parser reads the repo link text, the language label, and the description and cleans the result. A final set step pulls the author from the repo path and outputs a tidy JSON record for easy reuse.

No credentials are required because the workflow reads public web content. Teams usually reduce manual browsing from about 30 minutes to 2 minutes per check, and they keep a consistent format for reports and newsletters. Use it to prepare weekly digests, plan blog topics, monitor languages for hiring, or share a quick snapshot in team updates.

What are the key features?

  • On demand manual trigger to run checks when needed
  • HTTP request fetches the GitHub trending page HTML
  • HTML extraction isolates the main content box for clean parsing
  • HTML extraction returns each repository row as a list
  • Split out converts the list into one item per repository for processing
  • Field extraction captures repository text, language, and description
  • Set step parses the author from the repository path and cleans values

What are the benefits?

  • Reduce manual research from 30 minutes to 2 minutes per run
  • Automate 90% of page parsing and formatting work
  • Improve data consistency by 95% across weekly reports
  • Handle 5 times more repositories without extra effort
  • Collect insights without API keys or paid connectors

How do you set it up?

  1. Import the template into n8n: Create a new workflow in n8n > Click the three dots menu > Select 'Import from File' > Choose the downloaded JSON file.
  2. Open the HTTP Request node and confirm the URL is https://github.com/trending. Click Execute Node and make sure you get a 200 status and HTML content.
  3. Open the first HTML extraction step that targets the main box. Ensure the CSS selector is 'div.Box' and the return value is set to HTML. Execute the node and check that the 'box' field contains a large HTML string.
  4. Open the next HTML extraction step that collects repository rows. Confirm dataPropertyName is 'box' and the selector is 'article.Box-row' with returnArray enabled and returnValue set to HTML. Run it and verify a 'repositories' array appears.
  5. Open the Split Out step and confirm the field to split is 'repositories'. Execute it and make sure each item now holds a single repository HTML snippet.
  6. Open the repository data extraction step. Check selectors: 'a.Link' for repository, 'span.d-inline-block' for language, and 'p' for description. Execute and verify clean text fields are returned.
  7. Open the Set Result Variables step. Confirm the author expression is $json.repository.split('/')[0].trim(). Execute the node and confirm the output includes author, repository, language, and description.
  8. Run the entire flow from the manual trigger. Review the final items and verify they match the GitHub trending page content.
  9. If results are empty or fields are wrong, update the CSS selectors because page layouts can change. Avoid heavy repeated runs to reduce the chance of request blocks.

Tools Required

$24 / mo or $20 / mo billed annually to use n8n in the cloud. However, the local or self-hosted n8n Community Edition is free.

Similar Templates

Join Futurise to access 1,200+ automation templates

Get instant access to ready-made automation workflows for n8n, Make.com, AI agents, and more. Download, customise, and deploy in minutes.