The precision 20-20-20 rule app for Mac.
Every 20 minutes, look at an object 20 feet away for 20 seconds. A pure Swift menu bar utility built for developers, designers, and deep workers who care about their eyesight.
import SwiftUI
import AppKit
// User in deep focus mode...
final class EyeHealthEngine: ObservableObject {
let workDuration = 1200 // 20 minutes
let breakDuration = 20 // 20 seconds
func relaxCiliaryMuscle() { /* Glance 20 ft away */ }
}
Look 20 feet away!
Shift your gaze out a window or at the furthest object across the room. Let your eye lenses fully flatten and reset.
Zero Distractions for 20 Mins
Lives silently in the macOS menu bar with no Dock icon or notification spam. You stay locked into your work.
Screen Dims for 20 Seconds
Multi-display frosted glass gently reduces screen brightness, prompting you to glance 20 feet away to relax eye lenses.
Non-Blocking with ESC Key
Subtle audio chimes guide your eyes. In a meeting or urgent task? Press ESC to dismiss instantly.
Engineered like genuine macOS system software.
No bloated Electron runtimes. No background telemetry. Just ultra-fast, native Swift code that respects your focus.
Smart Inactivity Detection
Using CoreGraphics system-level activity listeners, 20-20-20 detects if you stepped away for 5+ minutes and automatically resets the timer. Never get interrupted the second you sit down.
Full-Screen Display Dimming
Smoothly dims your monitors with an .ultraThinMaterial frosted glass overlay to reduce glare, while keeping you in full control with immediate ESC key dismissal.
Gentle System Audio Cues
Plays subtle built-in macOS chimes when the break starts and ends, allowing you to gaze out the window without staring at an on-screen timer.
10-Second Pre-Break Warning
Gives you a courteous heads-up 10 seconds before a break begins so you can wrap up a sentence, pause a video, or finish your git commit.
Sleep & Wake Aware
Listens to macOS system sleep events (NSWorkspace.willSleepNotification). When your Mac sleeps, timers pause; when it wakes, it refreshes cleanly.
0.0% CPU & Zero Tracking
Written 100% in native Swift with SwiftUI and AppKit. Consumes under 15MB RAM and zero network bandwidth. Your data never leaves your computer.
Frequently Asked Questions
Everything you need to know about 20-20-20 for Mac.
What is the 20-20-20 rule?
It is an ophthalmologist-recommended standard: every 20 minutes of screen time, look at an object 20 feet away for 20 seconds. It relaxes your eye's focusing muscles and triggers natural blinking.
Does it appear in the Dock or Cmd+Tab switcher?
No. 20-20-20 is configured with LSUIElement = true, so it runs purely as a menu bar extra with zero Dock footprint.
What if I'm in a video call or presenting?
You can pause the timer with ⌘P in the menu bar, or simply hit the ESC key to dismiss any active break instantly.
Is this a subscription?
Never. It is a single one-time payment of $49.99 with lifetime updates and access to future macOS compatibility builds.
Protect Your Eyesight. Stay in Flow.
A lightweight, native macOS menu bar app. One-time payment of $49.99. Lifetime updates included.