Enzo Manuel Mangano

Enzo Manuel Mangano

@reactiive.io

working on https://reanimate.dev and https://reactiive.io/demos

933 followers102 following250 posts

Here depth + surface normals are estimated ahead of time to get the best visual result I could. Way less impressive than runtime inference 😅, but still so fun for a domain where the image never changes (like paintings!). GitHub: github.com/enzomanuelm...

github.comGitHub - enzomanuelmangano/demos: An ongoing collection of React Native animations crafted with Reanimated, Gesture Handler, and Skia.An ongoing collection of React Native animations crafted with Reanimated, Gesture Handler, and Skia. - enzomanuelmangano/demos
View full thread
View full thread

3. to avoid too much randomness and keep the icon easy to recognize, I'm only updating the display text (e.g. 122, the number of animations) and the spiral.

Great books always feel like the letters themselves are alive. I’ve had this idea in mind for a while, and it was so fun to prototype with React Native Skia.

The demo is open source (along with 120+ other React Native animations). If you’re trying to animate a lot of similar objects (images, shapes, or anything really), the Atlas API from Skia is something I strongly recommend playing around with.

View full thread

1. note: these results have no statistical significance - they're just the output of my local runs (macbook pro m3). The bsky e2e suite starts with a setupServer call, I cut that time from the measurements and started after it.

View full thread

5. plan_md - simplify package installation ✅ - remove idb dependency - ensure it’s stable for production-grade open source apps - provide an easy way to run it in ci - provide a simple interface to run agentic testing on top of it (?)

View full thread

3. I had to rethink the initial architecture a lot. Now it doesn't make assumptions. The search no longer happens via the Fabric tree - it's based on a native UIView traversal. This works perfectly in React Native because, of course, any React Native component is a real native component.

4. Why? The prev idea is still my favorite but has a lot of edge cases (e.g. what about all the components that are undetected by a Fabric tree traversal?). Removing the newArch assumption also simplifies maintenance a ton and (potentially) opens the door to all native apps.

1. I introduced Ennio a few weeks ago (still experimental). The long-term goal is to run e2e tests in a very fast and reliable way. The focus is on RN/Expo apps, but theoretically, it should now work with any iOS project (sim only).

2. It's no longer a native package, but a dev dependency (still requires idb right now, but no prebuilds). You can install it and test it in less than 10 seconds.

I've been recently experimenting with a new way to run e2e flows in React Native. Same maestro e2e test, same yaml, but 2-3x faster. learn about Ennio 🧵

View full thread

7. the core has been built as a nitro module (from @margelo_com), and I’ve been iterating almost in yolo mode thanks to Argent from @swmansion. Also, these announcement videos were made with @Remotion. Three insane projects you should check out if you haven't!

I've been recently experimenting with a new way to run e2e flows in React Native. Same maestro e2e test, same yaml, but 2-3x faster. learn about Ennio 🧵

View full thread

5. once we find the item, we can synchronously measure its coordinates and pass them to IDB, which will simulate a real finger tap at those x,y coordinates. That’s really it.

I've been recently experimenting with a new way to run e2e flows in React Native. Same maestro e2e test, same yaml, but 2-3x faster. learn about Ennio 🧵

View full thread

3. why faster? Ennio interprets the maestro yaml only for react native apps, which allows it to make additional assumptions. It assumes RN + newArch and communicates via Hermes inspector.

4. the main idea is simple. Instead of using XCUITest, we can rely on the Fabric shadow tree to detect the items, then cross check with the a11y tree and the viewport.

I've been recently experimenting with a new way to run e2e flows in React Native. Same maestro e2e test, same yaml, but 2-3x faster. learn about Ennio 🧵

1. disclaimer: this is an experimental project and works only on iOS with metro enabled for now. The plan is to make iOS work perfectly and then extend with Android support as well.

2. I'm building Ennio with 1:1 parity with maestro yaml - tapOn, assertVisible, scroll, runFlow, retry, env interpolation. drop your existing flows in, they should just work (hopefully).

The idea was to build a forest from real GitHub contribution data (my last 9 years) - but I liked how it looked with some made-up data so much that I kept a toggle for visual purposes. The main goal, though, was to make it look good with real data