Video wird geladen...
Video konnte nicht geladen werden
While you debate if you should switch to native, I've implemented iOS Gallery zoom interaction, using React Native and Expo, and feels incredibly smooth. Recreating this was living in my head over 4 years without paying, now I think it's a good time to show what’s possible. It’s funny... show more
25,249 Aufrufe • vor 3 Tagen •via X (Twitter)
20 Kommentare

The debate was never “can RN do a zoom.” It was “can RN do a zoom, plus gestures, plus memory pressure, plus a 4-year-old Android device, without one engineer babysitting it.” You proved the happy path. The product question is whether that interaction stays at 60fps after you add sharing, albums, and a backend. What’s the frame-time look like on an older iPhone, not the demo device?

@wcandillon and android? 😅

I've thought about doing this too. Looks amazing! congrats!

flutter. write once and get delicious performance everywhere 😉

Looks nice! - When you are in 5, 3, and 1 column layout, you need to add border to grid - Use different size of photos based on layout to load them faster - Transition doesn't look matching the iOS, use the spring values below damping: 500, stiffness: 1000, mass: 3, overshootClamping: true, energyThreshold: 6e-9

The point that native is by default better than cross-platform is a pretty bad argument. With enough care and attention, you can control the output 😊

@wcandillon Can doesn’t mean should

In my experience, as a user reactive native apps are always slower and does not have a native feel. There are weird UI bugs in them. I have experienced more UI bugs in Meta apps than Google apps(native). It might be skill issue for those developer.

looks amazing!

Cross-platform tools are getting better, nowadays it's a question of how these tools are used. Great demo!

@nishanbende Looks smooth, did you use Skia ?

that pinch-to-zoom gallery transition is exactly where rn apps usually feel fake lol, this one looks genuinely smooth

👏🏻 looks dope.

that zoom interaction looks way better than i expected from RN + Expo tbh

the rubber-band physics is always the giveaway. you can fake a lot in rn but the second the zoom spring feels off, users notice instantly

That sounds like a rewarding project! What was the most challenging aspect of implementing the zoom interaction in React Native, and how did you overcome it?

🧈

the spring animation is doing all the heavy lifting here, looks great. i've found expo's shared element stuff starts falling apart once you add a second gesture on top, curious if you hit that too

what specific challenges did you face while implementing that zoom interaction?

这个是 expo-ui/swiftui 还是 react-native
