Hacker News to Gmail, curated learning links
You open one “Ask HN: How do I learn X?” thread and suddenly you have 40 tabs, 12 “save for later” bookmarks, and zero confidence you picked the right resources.
This HN Gmail curation automation hits marketers trying to skill up fast, but founders and consultants feel it too. You want community-vetted links in one place, not another evening lost to scrolling comments.
This workflow turns Ask HN discussions into a clean, categorized resource email. You will see what it does, what you need, and where people usually get stuck.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Hacker News to Gmail, curated learning links
flowchart LR
subgraph sg0["Collect Learning Topic Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "Gemini Dialogue Engine", pos: "b", h: 48 }
n1@{ icon: "mdi:robot", form: "rounded", label: "Core LLM Workflow", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/hackernews.png' width='40' height='40' /></div><br/>Query AskHN Posts"]
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Retrieve HN Comments"]
n4@{ icon: "mdi:cog", form: "rounded", label: "Aggregate Comment Text", pos: "b", h: 48 }
n5@{ icon: "mdi:swap-vertical", form: "rounded", label: "Expand Child IDs", pos: "b", h: 48 }
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/form.svg' width='40' height='40' /></div><br/>Collect Learning Topic"]
n7@{ icon: "mdi:message-outline", form: "rounded", label: "Dispatch Resource Email", pos: "b", h: 48 }
n8["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/markdown.dark.svg' width='40' height='40' /></div><br/>Render Markdown HTML"]
n9@{ icon: "mdi:cog", form: "rounded", label: "Completion Marker", pos: "b", h: 48 }
n2 --> n5
n8 --> n7
n3 --> n4
n1 --> n8
n6 --> n2
n5 --> n3
n4 --> n1
n0 -.-> n1
n7 --> n9
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n6 trigger
class n1 ai
class n0 aiModel
class n3 api
classDef customIcon fill:none,stroke:none
class n2,n3,n6,n8 customIcon
The Problem: “Learning research” turns into tab chaos
Ask HN threads are gold, but they’re messy on purpose. Great links are buried between jokes, side debates, and “this changed my life” comments that never say what the resource actually is. If you’re learning a new skill for a campaign, a client project, or hiring decisions, you don’t just need inspiration. You need a short list you can trust. Manually, that means opening profiles, skimming dozens of top-level comments, copying URLs, then trying to group them into something usable. It’s not hard. It’s draining.
And yes, the friction compounds.
- You spend about an hour per topic just extracting links and titles from comments.
- Good resources get missed because they’re not the first comment, or they’re phrased vaguely.
- Your “list” ends up unshareable, because it’s a mix of raw URLs and half notes.
- Next week, you repeat the whole process because nothing is saved in a consistent format.
The Solution: Ask HN threads curated into a resource email
This n8n workflow starts with a simple “what do you want to learn?” submission. Once you enter a topic, it searches Hacker News for relevant “Ask HN” posts, then pulls the top-level comments where the real recommendations live. Those comment snippets are combined into a single body of text and passed to an AI model (Google Gemini in this build) that extracts the best learning resources. Instead of dumping a wall of links, the AI organizes them into a Markdown list by resource type (books, courses, articles, tools) and by difficulty level. Finally, the workflow converts that Markdown into clean HTML and emails it to you through SMTP, so it lands in your inbox like a mini curated newsletter.
The workflow begins when you submit a learning topic in the form trigger. It then queries Ask HN posts, fetches the comment text, and sends the combined content into the LLM chain for sorting and summarizing. The finished, categorized recommendations are rendered and delivered by email. No extra copy-paste.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you want to learn “technical SEO” and you usually skim 3 Ask HN threads. If you spend roughly 20 minutes per thread opening links, skimming comments, and copying the best stuff, that’s about an hour per topic, sometimes more. With this workflow, you submit the topic in the form (about 1 minute), wait a few minutes for comment fetching and AI analysis, and the final categorized email shows up ready to use. Call it 5 minutes of waiting instead of an hour of work. Honestly, it’s the difference between “I’ll research later” and “I’ll start today.”
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Google Gemini API for analyzing and categorizing recommendations.
- SMTP email account to send the resource email.
- Gemini API key (from Google Cloud Console after enabling Generative Language API).
Skill level: Beginner. You’ll connect credentials, edit a couple of fields, and run a test submission.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
You submit a learning topic. The workflow is triggered by a simple form (the “Collect Learning Topic” node), so the only input is what you want to learn.
Hacker News threads are found and expanded. n8n queries Ask HN posts related to your topic, then splits out the relevant comment IDs so it can fetch recommendations at the source.
Comments are retrieved and turned into clean input for AI. An HTTP request pulls the comment text, then an aggregation step compiles it into a single chunk. Less noise, more signal.
The AI curates and your email is sent. The LLM chain (Gemini dialogue plus the core prompt) identifies the best resources, formats them as Markdown, converts that Markdown to HTML, and dispatches the email through SMTP.
You can easily modify the search query and the email template based on your needs. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Form Trigger
Set up the form that collects the learning topic and email address so the workflow can begin.
- Add the Collect Learning Topic node as your trigger.
- Set Form Title to
What do You want to learn ?. - Set Form Description to
We'll find the best resources from HackerNews and send you an email. - Under Form Fields, add I want to learn with placeholder
Python, DevOps, Ai, or just about anything. - Add an email field labeled What's your email ? with placeholder
[YOUR_EMAIL]and mark it required. - In Options, set Path to
learn, Button Label toSubmit, and the submitted text toWe'll shortly send you an email with top recommendations..
Step 2: Connect HackerNews Data Retrieval
Pull relevant Ask HN posts and expand them into comment IDs for retrieval.
- Add Query AskHN Posts and connect it to Collect Learning Topic.
- Set Resource to
alland Limit to150. - In Additional Fields, set Tags to
ask_hnand Keyword to{{ $json["I want to learn"] }}. - Add Expand Child IDs and set Field to Split Out to
children. - Connect Query AskHN Posts → Expand Child IDs to match the execution flow.
Step 3: Retrieve and Aggregate Comment Text
Fetch each comment and aggregate text into a single payload for the LLM.
- Add Retrieve HN Comments and connect it to Expand Child IDs.
- Set URL to
https://hacker-news.firebaseio.com/v0/item/{{ $json.children }}.json?print=pretty. - Add Aggregate Comment Text and connect it to Retrieve HN Comments.
- In Aggregate Comment Text, set Fields to Aggregate → Field to Aggregate to
text.
Step 4: Set Up the LLM Analysis and Markdown Rendering
Analyze comments with Gemini and format the response as HTML for email delivery.
- Add Gemini Dialogue Engine and set Model Name to
models/gemini-1.5-flash. - Credential Required: Connect your googlePalmApi credentials in Gemini Dialogue Engine.
- Add Core LLM Workflow and connect Aggregate Comment Text → Core LLM Workflow.
- In Core LLM Workflow, set Prompt to the provided template and ensure it includes expressions like
{{ $('Collect Learning Topic').item.json["I want to learn"] }}and{{ $json.text }}. - Connect Gemini Dialogue Engine to Core LLM Workflow as the language model (credentials are added on Gemini Dialogue Engine).
- Add Render Markdown HTML and connect Core LLM Workflow → Render Markdown HTML.
- Set Mode to
markdownToHtmland Markdown to{{ $json.text }}.
Step 5: Configure Email Delivery
Send the formatted digest to the email address submitted in the form.
- Add Dispatch Resource Email and connect Render Markdown HTML → Dispatch Resource Email.
- Credential Required: Connect your smtp credentials in Dispatch Resource Email.
- Set From Email to
[YOUR_EMAIL]. - Set To Email to
{{ $('Collect Learning Topic').item.json["What's your email ?"] }}. - Set Subject to
Here are Top HN Recommendations for Learning {{ $('Collect Learning Topic').item.json["I want to learn"] }}. - Set HTML to
FYI, We read through {{ $('Expand Child IDs').all().length }} comments in search for the best. {{ $json.data }}. - Connect Dispatch Resource Email → Completion Marker to finalize execution.
{{ $json.data }} exists in Dispatch Resource Email.Step 6: Test and Activate Your Workflow
Validate that the form trigger, data collection, LLM summary, and email delivery work end-to-end.
- Click Test workflow and submit the form in Collect Learning Topic with a sample topic and email.
- Confirm Query AskHN Posts returns Ask HN posts matching your keyword and that Expand Child IDs outputs comment IDs.
- Verify Aggregate Comment Text produces a combined
textfield and Core LLM Workflow returns Markdown. - Check that Dispatch Resource Email sends an email with HTML content and the correct subject.
- Once successful, switch the workflow to Active to run it in production.
Common Gotchas
- Google Gemini credentials can expire or need specific permissions. If things break, check your Google Cloud project API status and key restrictions first.
- If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
- SMTP providers sometimes block automated sending. If emails aren’t arriving, check your SMTP logs, “less secure app” settings (if applicable), and spam/quarantine folders.
Frequently Asked Questions
About 30 minutes if you already have your API key and SMTP details.
No. You’ll mostly paste credentials and tweak a couple of text fields. The workflow logic is already built; you’re just configuring it.
Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in Google Gemini API usage, which is usually low for a single curated email.
Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.
Yes, but you’ll want to adjust the form trigger to capture the recipient email, then map that field into “Dispatch Resource Email.” Common tweaks include changing the categories the AI outputs (books vs courses vs videos), limiting results to beginner-only, and rewriting the prompt in the “Core LLM Workflow” chain to match your brand voice.
Usually it’s an API key issue: the Generative Language API isn’t enabled for the project, the key is restricted, or the key was rotated and n8n still has the old value. It can also be simple quota limits if you test repeatedly in a short burst. Check the Gemini node error details in n8n first, then confirm the key and project settings in Google Cloud.
A lot. On n8n Cloud, your practical limit is your monthly executions and how many threads/comments you fetch per run; if you self-host, it mostly comes down to server resources and API quotas. For most small teams, running a few topics per day is comfortably within limits. If you start doing this at scale, add caching and cap the number of posts pulled per query.
Often, yes. This workflow needs multi-step data gathering (HN search, comment retrieval, aggregation) plus AI formatting and Markdown rendering, and n8n handles that kind of branching without turning into a fragile pile of zaps. You can also self-host, which matters if you run lots of topic requests or want tighter control of credentials. Zapier and Make can work, but you’ll usually pay more once you add the AI steps and multiple actions. Frankly, the biggest difference is maintainability: n8n keeps the logic in one place. If you’re unsure, Talk to an automation expert and we’ll point you to the simplest option for your setup.
This is the kind of automation you set up once, then rely on whenever a new skill becomes urgent. Let the workflow collect the links. You focus on learning.
Need Help Setting This Up?
Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.