Skip to content
Enjoy some plunky browse music :)
> BOOTING MATINEE.INK_

Matinee

A cloud-connected e-ink display · 2026

A movie review that hangs on your wall. It pulls what I’ve watched and rated on Letterboxd, renders the whole frame in the cloud, and paints it onto a 13.3″ e-ink panel that sips power and never asks for attention. No feed. No notifications. Just the last thing I loved, framed like it matters.

The Matinee display framed on a wall, showing a five-star Forrest Gump review

On my wall right now — Forrest Gump, five stars.

At a glance

What
A cloud-connected e-ink display that frames your latest Letterboxd review
My role
All of it — PCB, firmware, cloud pipeline, companion app
Status
Working prototype in daily use; Kickstarter planned
Stack
ESP32-S3 · Python/PIL · Next.js · Supabase

0

Unit Kickstarter run

$0

Bill of materials, per unit

0

Colors of e-ink (Spectra 6)

0

Source, done right

The Idea

I write real reviews. Then they vanish into a feed.

I’ve logged hundreds of films on Letterboxd — half-star ratings, dumb little one-liners, the occasional review I’m actually proud of. And all of it lives in an app I open, scroll, and forget. The stuff I think about the most has no place in the room I actually live in.

So I built the room a screen. Matinee takes my latest Letterboxd entry and turns it into an object — poster, rating, my words — that just sits there, on the wall, being true. It’s the opposite of a notification. You don’t check it. You catch it out of the corner of your eye and remember you have taste.

Interactive

Go ahead. Hit refresh.

Press the button and watch it repaint, the way real e-ink does — a flash, an invert, then it settles into the next frame.

Matinee display frame
idle

Real frames, exported straight from the live pipeline — the household’s actual reviews. The flash mimics how e-ink repaints.

The Object

I wanted dumb hardware and a smart cloud.

The hardware does almost nothing on purpose. There’s no processor grinding away, no app running on the device. An ESP32 wakes up, asks the cloud “is there a new picture?”, and if there is, it paints it and goes back to sleep. That’s it.

That decision is the whole design. Every hard problem — fetching from Letterboxd, laying out the frame, fitting a poster into six colors — happens on a server I can fix in seconds, not on 200 boards I’d have to physically recall. The panel is e-ink because a movie poster shouldn’t glow, shouldn’t refresh, shouldn’t cost power to keep showing. It holds its last image with the power off. Like paper that changes its mind once a day.

The Board

A two-layer board, a $4 brain, and a spec I could hand to a factory.

I designed the PCB to be almost boring — and that was the goal. One ESP32-S3, a power regulator, a USB-C port, two buttons, and a ribbon connector to the panel. Two layers. Under a dollar to assemble. The less that’s on the board, the less that can fail across a 200-unit run.

Boot Sequence

1

Power On

ESP32 boots, checks for saved Wi-Fi.

2

Wi-Fi Setup

No network? Spin up a captive portal to configure.

3

Register

Phone home with the hardware serial.

4

Pair

Show a 6-digit code, claim it in the app.

5

Loop

Heartbeat every 5 min, poll for a new frame every 10s, sleep.

The Pipeline

From my Letterboxd to my wall, in five hops.

Letterboxd

RSS feed

Vercel

Python + PIL render

Supabase

1600×1200 PNG

ESP32

polls via ETag

The panel

repaints

The ETag trick is the part I’m quietest-proud of: the device asks “has the picture changed?” and 99% of the time the answer is “no,” so it downloads nothing and goes back to sleep. It’s the difference between a wall ornament and a power bill.

The Companion

The wall is the output. The app is the control room.

Pairing, what’s on the wall, the whole review feed — it all lives in a Next.js PWA I run off my phone.

Matinee companion app — Now Displaying home screen

Now Displaying

The home screen mirrors the wall: what’s showing, whether the device is online, and how often it repaints. It’s also where I set the sprite — my house critic, Spike — and watch the counter tick past 350 reviews.

Matinee companion app — the review feed

The Feed

Every review the household logs, flowing into a feed the wall pulls from. It started as a way to show off my Letterboxd and turned into a small, honest record of what we actually watch.

The Hard Part

I designed it for everything. I shipped it for one thing.

The original spec was greedy. Matinee was going to surface my whole taste — Letterboxd and Untappd, concerts I’d been to, books, the works. I built the architecture to handle all of it, sources as plug-ins.

Then I ran the honest math on a 200-unit Kickstarter and made the call I’d make again: one source, flawless, beats five, flaky. Every extra integration was another feed to babysit, another way for a stranger’s wall to show a broken frame. So I cut. Letterboxd only — the one I actually use every day.

Designed for · not shipped

UntappdConcert ArchivesBelliBooks

Designed for. Deliberately not shipped. That’s the point.

Reflection

What building a physical product taught me that software never did.

Software forgives you. Ship a bug, push a fix, nobody remembers. Hardware doesn’t — every choice gets soldered into 200 copies you can’t take back. That pressure made me a better editor of my own ideas.

The scope cut, the dumb-hardware bet, the boring two-layer board — all of it was me learning to design for the version that ships and survives, not the version that demos.

Technical

  • PCB Design (KiCad)
  • ESP32 / Embedded C
  • E-Ink & SPI
  • Python / PIL Rendering
  • Next.js + Supabase
  • Vercel Serverless

Judgment

  • Scoping & Cutting
  • Design for Manufacture
  • Cost Engineering
  • Systems Thinking
  • Product Ownership
  • Shipping Physical
GET IN TOUCH

Want one on your wall?

Matinee’s heading to Kickstarter. If you want to talk hardware, taste, or how a $4 chip ends up being furniture — I’m around.

A cloud-connected e-ink display · matinee.ink · 2026

Next ProjectOperations at ScaleRunning Trust & Safety operations: one quality standard across 10 global sites and 800+ moderators, calibration as a craft, and changing systems that can't stop running.