Bye disgusting triangle man. Hello @coolifyio.
Huge kudos to @heyandras. I'm amazed at how easily I moved everything to my own Hetzner Cloud within 2 hours.
Hirbod
9,481 posts
- @expo is slow, React Native is bad. Hold my beer ๐บ. Fully packed with basically every expo package there is, react query, zustand, a full fledged video editor, vision camera, react navigation and so much more. Video length limited on Twitter, will release more. 60-120fps
00:00 - So there we go, running @expo SDK 53 Preview.11 with every single package updated to the latest version, even using screens 4.11-beta.2. New architecture. Dev mode. Snappy, fast, really enjoyable. It was a long run to get here, but the new arch feels good.
00:00 - LegendList by @jmeistrich supports maintainVisibleContentPosition, a smart list invert using padding instead of flipping transform, has bi-directional scroll events, has passed most of my QA (nobody tests like me) and is ~20% faster than FlashList.
00:00 - Iโve finally figured out why uploading sucks in React Native: itโs because of base64-js. Aliasing it in Metro was the real game-changer. And switching to expo-file-system/next to slice files, instead of using readAsStringAsync, made a big difference. @aleqsio
- Huge PSA for me. Big shift ahead. Tech with @Expo is moving fast. What once felt solid now begs for change. And then, out of nowhere, it felt like the stars aligned. A spark I didnโt see coming lit the way forward. Standing still stopped making sense. Time to move.
00:00 - It's still crazy to me how much FPS you gain on Android with @expo when rendering FlashList items directly with RCTText and RCTView. GestureDetector is very expensive, even with useMemo; we had noticeable FPS drops. Now, we have 30-50 fewer dropped frames while scrolling, IN DEV
- PSA: React Native /@expo crash with this issue randomly. But even worse, if you have Pressables without accessibilityLabel (especially by RNGH), your app can randomly end up in an infinite loop because it tries to traverse all children to find text nodes. ENABLED BY DEFAULT.
- Mastered audio in React Native! Created a cross-platform audio player with @expo. Harder than anticipated, but proud of the result. Considering releasing it as a library. Each player manages its own state & routes audio globally.
00:00 - Has anyone patched React Native to restore console.log yet? Two days on 0.77, and I can't stress enough how much I hate this change. It's frustrating, especially with how often the devtools websocket dies. You're making things harder for devs with a change nobody wanted.
- Guess I can prepare my next App update! FlashList has finally been released. RIP FlatList! Will never look back to you! shopify.github.io/flash-list/
- Did you know that Reanimated v3 LayoutAnimation from @swmansion is a gift sent from heaven? After a few more iterations and addressing some logic issues, I think I've fixed all the quirks. FlashList + @expo + Rea3 = โค๏ธ
00:00






