When Your Android Vitals ANR Rate Climbs: Notes on Keeping the Main Thread Free in React Native
How I traced and fixed a rising Android Vitals ANR rate in a Rork-built React Native app, plus the main-thread rules I rolled out across six apps in production.
Managing Startup Time as a Budget: How I Deferred SDK Init Across Six Apps
Instead of optimizing startup ad hoc, I switched to allocating a per-phase time budget and defending it. Here's how I deferred SDK init across six Rork-built apps and added a CI gate that fails the build when the budget is exceeded.
Killing Thumbnail Scroll Jank in an iOS Wallpaper App — Notes on ImageIO Downsampling
Lay out a lot of thumbnails and scrolling stutters while memory balloons. The culprit was full-size image decoding on the main thread. Here is how ImageIO downsampling and prefetching cut measured memory dramatically.
iOS Memory Pressure on Rork Apps — A 5-Tier Release Architecture from 12 Years of Wallpaper Apps
A 5-tier memory release architecture for Rork-built iOS apps, refined while running wallpaper apps to a cumulative 50 million downloads. Includes the Instruments + MetricKit measurement flow that brought OOM rate from 4.3% to 0.36%.
Why FlatList's onEndReached Fires Multiple Times — and How to Stop It
After wiring up infinite scroll in a Rork-generated FlatList, you may notice the same paginated request hitting your API two or three times in a row. Here's why onEndReached fires more often than you expect and how to add a two-layer defense that survives production.
Switching from Context API to Zustand v5 in Rork Apps: What Changed and Why It Worked
Context API caused cascading re-renders in a growing Rork app. Here's how migrating to Zustand v5 solved it — with practical patterns for auth state and async logic in React Native.
Slow Images in My Rork Wallpaper App: Switching to expo-image and What Actually Changed
A hands-on account of switching from React Native's default Image component to expo-image in a Rork-generated wallpaper app — with code examples, blur hash setup, and observable performance improvements.
Adding Swift Charts to a Rork Max App: Setup, and Why It Stutters Past a Few Hundred Points
How to drop Swift Charts into the SwiftUI code Rork Max generates, where the framework starts choking once your dataset grows past a thousand points, and the downsampling and animation patterns that keep things at 60 fps on real devices.
Animation Jank in Rork Apps — How I Diagnosed Frame Drops and Fixed Them
Animations in your Rork app running smoothly in the preview but stuttering on a real device? This guide explains how to diagnose frame drops, why they happen, and how one line of code often fixes the problem completely.
When Your FlatList Starts Stuttering: Migrating Rork Apps to FlashList v2
When your Rork app's long lists start feeling sluggish, migrating to FlashList v2 makes scrolling dramatically smoother. Here is the practical migration path, taking advantage of v2's removal of estimatedItemSize.
Skeleton Screens in Rork Apps — Practical Patterns for Better Perceived Performance
If your Rork app still shows a spinner on a blank screen during load, you are leaving a lot of perceived performance on the table. Here is how I drop skeleton screens and shimmer effects into Rork-generated React Native code without over-engineering it.
The Machine Learning Optimizations Rork Runs Behind the Scenes — Why Generated Apps Just Feel Faster
Have you noticed Rork-generated apps run smoother than equivalent code you wrote yourself? Multiple ML pipelines are at work behind the scenes. This guide breaks down what's happening at code-gen, build, and runtime — backed by my own benchmarks.