Resources / Dev log

Why I built a cat that reminds you to blink

Dev log · Slow Blink · July 2026

For most of last year my eyes felt like sandpaper by every evening. I assumed it was sleep, or my monitor, or just getting older. Then I read the number that reframed the whole thing: relaxed, people blink about 22 times a minute; at a screen, that drops to about 7 — roughly a third — from a classic study in the New England Journal of Medicine (Tsubota & Nakamori, 1993). Every blink lays down a fresh film of tears. Skip two out of three of them for eight hours and the surface of your eye spends most of the day drying out. That was my gritty late-afternoon feeling, explained.

Why the reminders I tried never stuck

The obvious fix is a break reminder, so I tried a few. They all worked the same way: a timer fires every N minutes and interrupts you. And every one of them I dismissed on reflex, usually without reading it, because it fired whether I needed it or not. A timer can tell you that twenty minutes passed. It cannot tell you whether you actually stopped blinking. Half the time it nagged me while I was blinking normally, which taught me to ignore it the other half.

What I wanted was something that stayed quiet until it saw the real problem, and then made itself impossible to ignore in a way I would not resent. That turned out to be two separate hard problems.

Detecting a blink, privately

The detection runs on the webcam, entirely on-device. It uses a local face-landmarking model (MediaPipe) to track the shape of your eyes and computes an eye-aspect-ratio each frame, with a short calibration on first launch so it learns your open-eye baseline instead of a generic threshold. When you go too long without a blink, it acts.

Because it is a webcam app, privacy was not optional. Everything is processed in memory and discarded frame by frame. Nothing is uploaded, nothing is written to disk, and there is no account. There is a camera indicator in the menu bar the whole time it is watching. If you want to see the detection without installing anything, the same technique runs in your browser in our 30-second blink test.

Why a cat

The second problem was tone. A red banner or a buzz is easy to hate. So when you stare too long without blinking, a small cat quietly creeps in from the corner of the screen. You blink, it slips away. It is the only reminder I have not turned off after a week, and the honest reason is that it is genuinely hard to stay annoyed at a cat. It is a small design trick, but it is the difference between a reminder you keep and one you mute on day two.

What I learned watching my own numbers

The app also charts your average interval between blinks over time, which is the part I did not expect to find interesting. Mine roughly halves during deep work. Seeing a normal morning sit near a healthy rate and then watching the line sag every afternoon was a more convincing argument to take breaks than any article, including this one.

None of this is a cure for anything, and I am careful to say so. It lines up with the plain, boring consensus: the American Optometric Association groups screen-related dryness, strain, and headaches under digital eye strain, and its everyday advice is simply to blink more often and take regular distance breaks, like the 20-20-20 rule. Slow Blink is just a way to notice when you have stopped doing the first one.

Let the cat watch your blinks

Slow Blink notices when you stop blinking — 100% on-device — and sends a gentle cat to remind you. Free for macOS.

Download Slow Blink Take the blink test

Sources

Tsubota K, Nakamori K. Dry eyes and video display terminals. N Engl J Med. 1993;328(8):584.
American Optometric Association — Computer vision syndrome (digital eye strain)

This is a personal build story, not medical advice, and Slow Blink is not a medical device. Blink rates and eye comfort vary widely from person to person. If you have persistent eye discomfort, please see an eye-care professional.