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.
Rork iOS App Rejected with ITMS-90683 on TestFlight — How to Fix Missing Purpose Strings via app.json
If your Rork-built iOS app passes upload but gets an email titled ITMS-90683: Missing Purpose String in Info.plist, this guide walks through the real cause and the permanent fix via app.json, based on 12 years of shipping personal iOS apps with the same problem appearing across new SDK updates.
Two Months Without Opening AdMob Every Day — A Four-Tier Slack Setup for My Rork Apps
I have been shipping iOS and Android apps since 2014, and opening AdMob first thing in the morning had become a daily ritual. Earlier this spring I let it go and rebuilt the workflow around a four-tier Slack notification setup. Two months in, here is what I learned, including the misfires that took me three weeks to iron out.
Automating Production Incident Response as a Solo Developer — Crashlytics, Sentry, Slack Routing, and Staged Rollback
Twelve years of running my own iPhone and Android apps, accumulating 50 million downloads, taught me a specific shape for production incident response. This article shares the Crashlytics + Sentry double layer, Slack routing into interrupt and log channels, and a Remote Config plus EAS Update staged rollback I keep returning to.
Production-Quality VoiceOver and Dynamic Type for Rork Apps
An indie developer's implementation notes for adding production-quality VoiceOver, Dynamic Type, and Reduce Motion support to React Native apps generated by Rork — covering label design, focus management, and regression testing.
A month of running Rork and Claude on Xcode side by side — where each one ended up fitting
Notes from an indie developer who has shipped wallpaper apps on iOS and Android since 2014. After a month of keeping both Rork and Claude on Xcode open on the same desk, the work that fit each one turned out to be more obvious than I expected.
Rork × StoreKit 2 × App Store Server API — A Three-Layer Subscription Architecture for Indie Apps
How to combine StoreKit 2 and Apple's App Store Server API to protect subscription revenue in Rork iOS apps with three coordinated layers: client verification, server-side JWS validation, and notification reconciliation.
Fixing 'Row too big to fit into CursorWindow' on Android When AsyncStorage Holds Too Much in Rork
When a React Native app generated with Rork stores large JSON or image metadata in AsyncStorage, Android can throw a Row too big to fit into CursorWindow exception. Here are the practical fixes — MMKV migration, chunked keys, payload trimming, and compression — explained from real wallpaper-app experience.
The First 72 Hours After Shipping a Rork App — Crashes, Reviews, and Ad Priorities
The 72 hours right after you ship a Rork-generated app to the App Store or Google Play quietly decide most of the next six months of ratings and ranking. Here is the order I watch things in, after many years of solo iOS and Android releases.
Auto-Throttling AdMob When Crash Rates Spike: A Revenue-Protecting Brake Architecture with Rork, Firebase Remote Config, and Crashlytics
When crash rates spike, do you keep showing ads and watch your store rating crater, or pull back and accept the lost revenue? After 12 years of indie operations, my answer is neither: a four-state auto-throttle architecture that ties Firebase Remote Config and Crashlytics signals into AdMob serving decisions.
Rork × Firebase Remote Config: Tuning AdMob Safely in Production — Run App Open Frequency Caps Without a Release
From the experience of pushing wallpaper-app App Open ads too hard and watching DAU drop, here is a design for treating AdMob format mix, frequency caps, and exclusions as a Firebase Remote Config contract. Expo/Rork wiring, fail-safe defaults, A/B testing, and metric joins included.
Three Weeks of Adjusting a Rork-Generated App for iPad: Design Notes
After building a small iPhone app with Rork, I opened it on my iPad Air and found more rough edges than I expected. Here are the concrete adjustments I made over three weeks.