Skip to content

The pipeline behind a newsletter that hasn't missed a Monday

TL;DR

Diagnosis

A weekly newsletter kills you if you do it by hand — the reading, the selecting, the rating, the formatting, every Monday, forever. So I treated uxtygodnik as a product and built the pipeline that produces it: capture at the point of discovery (an RSS reader and a phone shortcut, both feeding one spreadsheet), triage in a custom app (rate, categorize, auto-shortlink), assemble in a second app (categorized lists, sorted by rating, only the three-star-and-up pieces), then send. 112 issues in, the cadence is sustainable — because the friction lives in the tools, and the tools are mine.

flowchart LR
    A["RSS reader<br/>Miniflux"] --> E["Webhook<br/>n8n"]
    B["Phone shortcut<br/>Safari"] --> E
    E --> F["Google Sheets"]
    F --> G["Triage in Retool<br/>rate, categorize, shortlink"]
    G --> H["Assemble in Retool<br/>categorized lists, 3 stars and up"]
    H --> I["Mailerlite<br/>send, Monday 8:00"]

    classDef neutral fill:#f0f0f1,stroke:none,color:#3f3f46,rx:14,ry:14
    classDef info    fill:#e9eff8,stroke:none,color:#1e3a5f,rx:14,ry:14
    classDef accent  fill:#27272a,stroke:#3f3f46,stroke-width:1px,color:#fafafa,rx:14,ry:14
    class A,B,E,F info
    class G,H neutral
    class I accent
    linkStyle default stroke:#a8a8b3,stroke-width:1.5px

What I did

Results

MetricValue
Issues shipped112 (since November 2023)
Cadenceweekly, Mondays 8:00
Subscribersseveral hundred, growing
Triage candidates50–60 a week
Infra subscription cost$0 (self-hosted)

The problem

Why does a weekly newsletter need a pipeline?

Because doing it by hand doesn’t survive past the first enthusiasm. Every week: read dozens of articles, decide what’s worth it, categorize, rate, write the link blurbs, format, send. Do that for two years straight and the bottleneck is no longer the writing — it’s the mechanical, repetitive lifting around it. Miss a Monday or two and the habit dies.

Why not just use an off-the-shelf newsletter tool?

Because those tools send newsletters; they don’t decide what goes in. The hard part is the upstream pipeline — capture, triage, rating, formatting — and that’s bespoke to how I read and choose. So I built that part, and use a standard sender (Mailerlite) only for the last mile.

My role / scope

Process

Key decisions & trade-offs

How it turned out

I’ve shipped 112 weekly issues since November 2023, to several hundred subscribers, every Monday at 8:00 — and the cadence is sustainable because the pipeline does the heavy lifting. The self-hosted pieces (Miniflux, Kutt) cost nothing in subscriptions and put the infrastructure in my hands. The one step I didn’t automate — the final paste — I left on purpose, because it’s cheap and I’d rather spend the time on things that matter more.

What I took away