I click a command.
Half a second later I have a PDF.
1080 by 1350 pixels. Ready to upload to LinkedIn. No window opened, no program visible, no manual clicking.
And yet something opened a web page, loaded it, printed it, and left.
That something is called Playwright.
A browser you can't see
Playwright is a browser automation framework. But no one sees it — it's headless. It opens Chrome, Firefox, or WebKit in the background, no screen, no interface. It runs what you tell it. Then it disappears.
The normal use case is testing. You load a page, click buttons, verify everything works, close.
I use it to print.
My case
I have a module that generates LinkedIn carousels — slides where I document how I'm building this company.
The flow goes like this: I write text in Markdown, a process converts it to HTML, Playwright opens that HTML as if it were a web page, prints it to PDF with `page.pdf()`, and saves it.
Done. No Canva, no Figma, no human hands in the middle.
The PDF comes out identical every time. Exact dimensions, exact fonts, exact proportions. A machine that prints.
The point
Playwright does things you don't expect from a "testing tool."
It generates images, PDFs, screenshots. It interacts with anything that runs in a browser — and practically everything runs in a browser. If you can see it on a screen, Playwright can capture it without a screen.
The pattern is always the same: HTML in, output out. In between, a browser you never see.
The chain
MYBRO runs everything.
axis builds the code.
Playwright prints.
Every carousel I publish passed through this chain. Nobody sees it. That's exactly the point.
Alessio Cappuccio — xyz.vision