An interaction design case study
The problem
Forgetting isn't the problem. The timing is.
The thought arrives when you're in a game. Or a meeting. Or a conversation that needs your full attention. You can't stop what you're doing, but if you don't capture it right now, it's gone. You tell yourself you'll remember. You don't.
My workaround was asking Siri to remind me in 5 seconds. Just enough delay to fire a notification while the thought was still fresh. It worked, barely. But notifications disappear. One swipe, one other alert, and it's gone. For an ADHD brain using that notification as an external anchor, gone means actually gone. The thought doesn't come back.
Apple Reminders added a persistent display feature in December 2024, but it requires setting an alarm time in advance. That's the wrong model. When you're in flow, you don't know when you'll be free. You just need the thing to stay visible until you are. Fork by the Door is built for that gap.

The interaction model
The core loop is simple. Capture in under two seconds. Stay visible until you're ready. Disappear only when you decide it's done.
Capture had to be as fast as possible. The input bar lives at the bottom of the screen, always. One tap and you're typing. Hands busy? Mid-game? You trigger it with Siri, "Fork by the Door, fork this," and the task goes in without you ever unlocking your phone.
Once a task exists, it doesn't go anywhere. It lives on the lock screen as a Live Activity. Persistent. Ambient. You can't accidentally swipe it away. It's there when you wake your phone to check the time. It stays until you say it's done.
iOS only allows one Live Activity on the Dynamic Island at a time. That's a real constraint. Which task gets the slot? I went with the oldest active task, the one that's been waiting longest, the one most likely to have been forgotten. But you can override it with a star. Something more urgent just came in? One tap promotes it. The default logic is grounded in how ADHD forgetting actually works. The override is for when reality is more complicated than the default.
The gesture system
Every interaction maps to something the user already knows from iOS.
Full swipe left dismisses the task and grants XP. It's the same motion as archiving an email, clearing a notification, deleting a message. A gesture that already means this is handled in your muscle memory. No new behavior to learn. The reward fires at the moment of completion, not behind a confirmation dialog.