Devlog: The Daily Tech Brief Pipeline (HN to Memes to Blog to LinkedIn)
I built a small pipeline that turns Hacker News into a daily tech brief, with memes, on this blog and on LinkedIn. This is how it’s put together and why it exists.
What it does, end to end
Every day, hands-off:
- Source — Pulls the live Hacker News front page via the Firebase API (
topstories.json, then each item). Cross-checks two daily AI/tech indexes to find the 5-7 stories that actually matter. - Write — Turns that into a brief in my voice: plain, short, no hype, no em dashes. A one-line “through-line” ties the stories together (some days it’s trust, some days it’s money, some days it’s just chaos).
- Memes — Builds 3-5 memes with the memegen.link API matched to the day’s stories, then hosts them on this domain (not hotlinked), with alt text, so they count as content instead of dead images.
- Publish — Writes the post as an Astro markdown file, builds the site to verify it compiles, opens a PR, merges it, and Netlify deploys it.
- Share — Post a shorter version to LinkedIn with a link back to the blog.
The pieces
- Sources: Hacker News Firebase API (free, no key), plus the AI-news indexes for cross-checking.
- Memes:
api.memegen.link/templatesto list valid templates, thenimages/{id}/{line1}/{line2}.png. A real gotcha: only some template ids work (drake, fry, buzz, rollsafe here); the others 404. And I check the PNG magic bytes before trusting the file, because a “success” isn’t a file. - Publishing: The site is Astro + Netlify. Post goes into
src/content/blog/, memes intopublic/memes/.npm run buildis the gate that has to stay green before anything ships. - LinkedIn: Via the API as the author, public post, with the blog URL.
Why it exists
I’m building in public. The blog is the primary product, and this pipeline keeps it current without me dragging a news tab into the workflow every morning. It’s a force multiplier on the “shipped” part of “no hype, just shipped.”
The honest trade-offs
- This is an auto-poster on a real account. I keep a human-in-the-loop bias: it reports real handles, never fakes a publish, and if the news is thin it’s supposed to say so rather than force a meme.
- Memes are the hook, not the SEO. The value for search is the original written angle and self-hosted images, not the joke itself.
- A recurring job like this lives or dies on verification. Every step has to confirm it actually happened (HTTP 200 on the post, a real LinkedIn share URN), or the pipeline is just quietly lying.
What’s next
- Internal links: route the brief’s “why it matters” into the service and devlog pages instead of only linking out to sources.
- Feeding older weekly roundups off the same pipeline.
The workflow is a reusable skill now, so each morning’s brief is structured, verified, and in my voice. That’s the whole point: build it once, then ship it daily.
Get new posts in your inbox
Weekly build notes, practical AI workflows, and lessons from shipping in public.
Unsubscribe anytime. No spam.
Need help shipping this faster?
I work with founders and teams to ship practical systems with clear tradeoffs and clean ownership.
Work With MeRelated reads
- 32bit-Spacer Devlog — From Systems to a Business Plan
This cycle on 32bit-Spacer was about direction as much as code: per-app business planning docs, a FOSS marketing plan, and a systems refactor. Devlog, not marketing.
- BulkPost Devlog — The Spec, the Waitlist, and the Learning Track
What's real in the BulkPost rebuild this cycle: the new spec work, the waitlist frontend, the backend model cleanup, and the PydanticAI track that feeds the agent core. A changelog.
- Dracula Devlog — Aug 15, 2026
Today's standup: app lock, TIR fixes, delete-by-swipe, quick-log, TXT export, and log filters. What shipped and what's next for the privacy-first blood sugar app.