I wanted a simple thing: paste a Twitter/X post link, get a clean PDF of it. Text, author, images, the whole card. No screenshots stitched together.
It sounded like a one-afternoon project. It was not. Here are the four walls I hit, and how I got past each one. If you ever try to read tweet data from the browser, this will save you a day.
Wall 1: you cannot read a tweet from the browser
The obvious first attempt: fetch the tweet from the syndication endpoint that X's own embed widgets use.
const id = "1719049883789729890";






