Yogesh Bhusara
All experiments

13 / GESTURE PHYSICS

Pull to Refresh

The problem

Without resistance, a pull either triggers instantly by accident or gives no sign of how far you must go to refresh.

The solution

Drag has rubber-band resistance and only commits when pulled past the threshold.

Experiment

Task: Pull the content down and release past the threshold.

NAIVE
Pull down
  • Inbox synced
  • New comment
  • Weekly digest
  • Deploy passed
  • Invoice paid
pull0px
threshold
armedFALSE
THOUGHTFUL
Pull down
  • Inbox synced
  • New comment
  • Weekly digest
  • Deploy passed
  • Invoice paid
pull0px
threshold80px
armedFALSE

Play with the values

80px
0.5

How it works

Seen in

Mobile feeds

Timelines refresh only when you pull decisively past the arming point, not on a stray tug.

Email inboxes

A resisted pull with a clear threshold prevents accidental syncs from small scrolls.

Dashboards

Data views reload on an intentional over-pull, with a spring-back if you release early.

Chat apps

Pulling to load history feels physical, communicating progress toward the commit point.

References