Hey HN, I built a thermal printer appliance out of walnut and brass. Turn a dial to pick a channel, press a button, and it prints what you need on 58mm receipt paper. No screen.
What it does: There are 16 modules across three categories. Content (weather, news, RSS, email, calendar, astronomy, quotes, journal prompts, "on this day"), games (sudoku, mazes, a choose-your-own-adventure), and utilities (text notes, QR codes, webhooks, system monitor). You assign any combination of those to 8 channels on the rotary dial.
How it works: A Raspberry Pi runs a Python/FastAPI backend that renders each module to the thermal printer. Configuration happens through a React-based settings UI hosted on your local network. Open it from any browser, no app install needed. Press the button and it fetches only what that channel needs, prints it, and you tear it off.
Idea:
- No cloud dependency. API keys are stored locally, the device makes no outbound connections on its own.
- No subscriptions. You bring your own API keys for services like NewsAPI. Everything else runs offline.
- The settings UI is password-protected and only accessible on your local network.
- Many modules work completely offline: sudoku, mazes, quotes, journal prompts, the adventure game, etc.
- The enclosure is hand-built from walnut with a powder coated steel faceplate and solid brass cutter bar. The faceplate is magnetic and pops off for easy paper roll changes.
The entire software stack was vibe coded with Claude. I did the hardware design and woodworking. Claude wrote the Python backend and React settings UI. There was a fair amount of back and forth, but I'm happy with how it turned out.
Source: https://github.com/travmiller/paper-console
I use it mostly for a morning printout (weather + headlines + sudoku), a grocery list channel I can tear off on my way out the door, and a WiFi QR code for guests.
Happy to answer questions about the build, the software, or the vibe coding process. If there is any interest I may do a limited build of 10 units! Let me know!