HCI/D Capstone · 2026 · Solo · React Native · 4 months

Off-Hand

A system that wraps Instagram with three check-ins: before you open it, while you scroll, and when you leave. Off-Hand never blocks the app. It asks for three seconds of intent before you enter.

Working iOS app8 interviews2 directions discarded3 design guidelines
01 · The Problem

Eight people tried to scroll less. Nobody stuck with it. Everybody wanted to.

Every screen-time app assumes you don't want to stop, so it takes Instagram away. But the people who install these apps already want to scroll less. They're losing the fight inside their own thumb. So I asked eight of them why their tools failed.

"Every time I saw 'access denied,' I felt like I was being punished by a tool I voluntarily installed."

P3 · 24 · STUDENT
6/8 disabled their blocker for one task and never re-enabled it  ·  8/8 described the cycle as personal failure  ·  5/8 raised bedtime scrolling unprompted
02 · The Research

Motivation was never the problem. It's design.

Three patterns surfaced in every single conversation. Tap any of them for the evidence.

Users open Instagram for one task, get pulled into Reels, and surface forty minutes later remembering nothing. The hand keeps moving while the mind goes elsewhere. They don't lose minutes. They lose themselves.

All-or-nothing blockers break the moment a real need appears, like replying to a DM. Six of eight participants disabled their blocker for one task and never turned it back on. The blocker ends up fighting the user's normal life instead of their scrolling habit.

Two early concepts fell apart for the same reason: feature-level blocking still felt controlling, and a physical phone charm was too easy to bypass. Tell a person no and watch them get clever. Ask them a question and they have to answer it.

03 · The Reframe

From blocking to reflection. The user already wants to scroll less. The design has to remind them at the right time.

Motivation doesn't disappear mid-session; it gets out-paced by attention-capture patterns that move faster than conscious thought. A blocker substitutes force for that motivation, which is why users fight it. A reflection slows the user back down to the speed of their own decision-making, where the motivation is already waiting.

Guideline 1

Prompt reflection. Restrict nothing.

Every intervention is dismissible in one tap. Nothing is ever blocked. The system backs the user's stated intent to stop scrolling.

Guideline 2

Reference the user's own intention.

Repeats back what the user said they wanted. The user keeps full authority over every decision.

Guideline 3

Make the gesture match the decision.

Reflex gestures produce reflex outcomes. Every meaningful choice is bound to a gesture slow enough for the conscious mind to catch up to the thumb.

Discarded × 2

What the filter set aside.

Feature-level blocking: still a blocker at a smaller grain; users disagreed on which feature was the problem anyway. A physical phone charm: first instinct was to detach it. It nagged from outside instead of surfacing the user's own intention.

04 · The System

Three interventions. Each one can be dismissed in one tap.

Before · The Doorway

Set your reason before you go in.

Three story-style cards between the tap and the feed: the receipt of your last session, something more worth reading, and a slider asking what you came for. Twenty seconds.

▶ Playing on the phone
During · The Check-in

Hold the orb if you mean it.

Mid-scroll, the screen dims. Your own stated intent surfaces above a gray orb. Hold three seconds to stay: haptics ramp, gray warms to green. Tap and walk, and you're out.

▶ Watch this moment
After · The Closing

How was your session?

One last screen on the way out: a four-stop slider with no neutral middle. Your answer becomes the HOW IT WENT on the receipt that greets you at the next session's Doorway, a private log only you can read.

▶ Watch this moment
The Doorway · Before
The differentiator

A tap is reflex. A hold is intention.

Most existing tools have a moment that looks like this: "You've used Instagram for 30 minutes. Continue." Users learn to tap through it within a few sessions. The reflection never happens. The hold makes the staying path slow enough that the choice gets made consciously.

TAPINSTANT · THE THUMB DECIDES
HOLD3 SECONDS · YOU DECIDE
Try it · The Check-in
"You said you'd browse. How's it going?"
Hold the orb for 3 seconds. Try it
05 · The Build

A working iOS app, built and tested on a real phone.

Off-Hand runs in React Native, tested through Expo Go on a real iPhone: home screen with the current orb state, an Archive of every receipt, Settings, and a Demo mode where tapping a fake Instagram icon fires the real Doorway, the closest a wrapper can get on a platform that doesn't allow interception.

Platform constraint

Limitation: real Instagram is sandboxed.

iOS prevents apps from drawing on top of other apps. A real version would use the Screen Time API to fire the Doorway when Instagram launches and re-shield mid-session for the Check-in.

Open question

Habituation isn't proven.

Guideline 3 is the bet that a three-second hold is hard to make reflexive. Whether it slows the ignoring curve requires longitudinal study I haven't done.

Scope

Tested on Instagram only.

The model should generalize to TikTok, YouTube Shorts, X, but each has its own surface inventory that would need designing into.

06 · What I Learned

What I'd tell myself at the next kickoff.

My instinct, repeatedly, was to add: more features, more data, more rules. The final concept is smaller than any of my early sketches and it's better because of that. Good design more often means less, placed better.

Going from "what would make it work" to "why are they abandoned" felt minor at the time. It changed everything downstream. I'm going to be more suspicious of solution-shaped questions at the start of the next project.

I kept feeling like a more aggressive intervention would be more useful. The research said otherwise every time. The restrained version is the one people kept using.