RORK LABJP
SDK58 — The Expo SDK 58 beta is open. It adopts the iOS 27 UIScene lifecycle, and R8 is now on by default for Android release buildsSWIFT — Rork no longer creates new Expo projects. New apps are Swift, Kotlin or React, and existing Expo projects keep building as before11/01 — Forty-two days remain for anyone who filed an extension on Google Play's target API level. Miss it and new users on newer devices stop seeing the appEXPOGO — Scanning the QR code in Expo Go stopped working for some people. Since September 3, iOS requires you to be signed in on both the terminal and the appNEW — What I changed when prebuild stopped and asked for the standard Swift AppDelegateXCODE27 — Xcode 27 is not required yet. The latest EAS Build image is still 26.6, and the 27 image is listed as coming soonSDK58 — The Expo SDK 58 beta is open. It adopts the iOS 27 UIScene lifecycle, and R8 is now on by default for Android release buildsSWIFT — Rork no longer creates new Expo projects. New apps are Swift, Kotlin or React, and existing Expo projects keep building as before11/01 — Forty-two days remain for anyone who filed an extension on Google Play's target API level. Miss it and new users on newer devices stop seeing the appEXPOGO — Scanning the QR code in Expo Go stopped working for some people. Since September 3, iOS requires you to be signed in on both the terminal and the appNEW — What I changed when prebuild stopped and asked for the standard Swift AppDelegateXCODE27 — Xcode 27 is not required yet. The latest EAS Build image is still 26.6, and the 27 image is listed as coming soon
ARTICLES

All Articles

All (1024) Getting Started (95) Dev Tools (527) AI Models (114) Business (183) App Dev (105)
Dev Tools/2026-06-01Intermediate

Fixing 'JavaScript heap out of memory' in Metro and EAS Builds

Your Rork or Expo build dies with 'FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory.' Here is why it happens and exactly how to fix it, both locally and on EAS Build.

Dev Tools/2026-06-01Advanced

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.

App Dev/2026-05-31Intermediate

Fixing the 'Signed With the Wrong Key' Error When Uploading a Rork App to Google Play

Your Rork app builds fine but Google Play rejects the upload with 'signed with the wrong key'? Here's how to tell which signing key is involved and the exact steps to fix it for each build setup.

App Dev/2026-05-31Intermediate

Retuning AdMob Mediation Priorities: Notes From Trying to Lift My eCPM

A running log of how I manually revisited the network priorities in my AdMob mediation setup to lift eCPM on an indie wallpaper app, what changed compared to leaving it on auto-optimization, and what I noticed along the way.

App Dev/2026-05-31Intermediate

Getting Users All the Way to 'Set as Wallpaper' on iOS — Save-to-Photos Permissions and Shortcuts

iOS apps cannot set the wallpaper directly. Here is how I handle add-only photo permissions, Live Photo saving, guiding users to Settings, and Shortcuts automation, with real numbers from running six wallpaper apps.

Dev Tools/2026-05-31Advanced

Running Crash-Free Rate as a Budget: An SLO Design Note for Deciding Where to Invest Across 6 Indie Apps

Notes from running 6 wallpaper apps in parallel and the shift from treating crash-free rate as a pass/fail threshold to treating it as an error budget. A working write-up on turning burn rate into investment and sunset decisions.

Business/2026-05-30Intermediate

Taking Inventory of Your AdMob Ad Units — All the Way to App Open Cooldown Design

When rewarded and interstitial units pile up and you can no longer tell which one fires on which screen, here is the inventory process I use, plus the design for adding a cooldown to an App Open ad that otherwise shows on every launch.

App Dev/2026-05-30Intermediate

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.

Dev Tools/2026-05-30Advanced

Managing Native Settings Across Rork-Exported Apps with a Custom Expo Config Plugin

Tired of re-typing your AdMob ID and ATT string every time prebuild wipes your Info.plist? Here is how I made native settings reproducible with a custom Expo config plugin and shared it across six wallpaper apps.

Dev Tools/2026-05-30Intermediate

Fixing 'TurboModuleRegistry.getEnforcing could not be found' in Rork

A practical walkthrough of the 'TurboModuleRegistry.getEnforcing(...): could not be found' error that became common once the New Architecture went default. Covers Expo Go vs. dev builds, when a native rebuild is required, and how to isolate libraries that aren't New Architecture-ready.

Business/2026-05-30Advanced

Two Weeks After Adding Pangle and Mintegral to My AdMob Waterfall — Notes on eCPM and Fill Rate

A record from a wallpaper app with over 50 million downloads: I added Pangle and Mintegral to my AdMob mediation, then compared two weeks of eCPM and fill-rate data. Bidding-and-waterfall coexistence, the effective-revenue breakdown, region-based groups, and a daily monitoring script — kept in a form you can actually operate.

Business/2026-05-30Advanced

I Turned Off My AdMob Floors and Revenue Collapsed — The Mediation Rules That Actually Worked Solo

A record of tuning AdMob mediation eCPM floors to real-world rates on an indie wallpaper app, and handling the end of Unity Ads waterfall support. Why you must not turn INT floors off, the 80% match-rate boundary, and a twice-monthly review routine.