Skip to article
AdoringSee how Adoring works

Designing a reveal that cannot be rushed

Nine hundred milliseconds of light gathering, and the four versions we threw away before it felt earned.

Ken Alvarez
· 7 min read
Share

The mutual reveal is the one moment in Adoring that is allowed to take its time. Getting it to take exactly the right amount took four attempts.

The four we threw away

  1. Instant. Both answers appeared the moment the second one landed. It read like a page load, not a moment.
  2. A countdown. Three, two, one. It turned a private thing into a game show.
  3. A shimmer. Continuous, looping, and exhausting after the second night.
  4. A card flip. It slid sideways. Nothing in Afterglow slides sideways.

What we kept

Light gathers over 900ms with an ease-in-out curve, then the answers resolve over 450ms. Content lifts about twelve pixels while opacity settles. There is no overshoot — the spring damping is 0.88, which is to say it arrives and stops.

Step Duration Curve
Gather 900ms easeInOut
Resolve 450ms easeOut
Settle 420ms spring, damping .88
Reduce Motion 180ms crossfade

The gather is the only thing in the system allowed to take most of a second.

A reveal that can be rushed is a notification. A reveal that cannot be rushed is an occasion.

Written by

Ken Alvarez

Builds the parts of Adoring you are not supposed to notice. Writes about reveals, restraint and the nights nobody answers.

Keep reading

See how Adoring keeps two people close.

Explore daily questions, private letters, games, memories, and long-distance rituals.

See how Adoring works