Erol Sen built a system that prints a two-page newspaper on his home printer every morning, and he wrote it up on erolsen.dev. A Claude routine writes the issue in the cloud at 05:15. GitHub Actions lays it out and checks it. A Raspberry Pi Pico 2 W on the WiFi sends it to the printer at 08:45, or 10:00 on weekends.
The three parts never talk to each other directly. They share one private git repository, so every step leaves a file behind. The Pico only makes outgoing HTTPS requests to GitHub every five minutes, so nothing from the internet has to reach into the house. Its token can read one repository and start its workflows, and nothing more.
The routine writes each issue as JSON, and a fixed template lays the blocks into three columns on A4. The build then opens the page in headless Chrome with fonts from the repository and refuses the issue if a check fails.
The printer is an HP LaserJet M111w, which takes only raster, so Actions renders each page to PWG raster without anti-aliasing.…