RORK LABJP
MAX — Rork Max generates native Swift apps for iPhone, iPad, Apple Watch, Apple TV, Vision Pro, and iMessage, with 2-click App Store publishingCHOOSE — Standard Rork ships cross-platform iOS/Android via React Native (Expo); Rork Max goes native. Pick based on where your app needs to runPRICE — It's free to start, with paid plans from $25/month. Rork Max sits above that as the premium productCREDIT — Credits don't roll over, so spreading usage week by week works better than saving it all for the start of the monthWORKFLOW — Reviews point toward generating a scaffold, then rewriting state and data layers yourself — internalizing structure speeds up iteration as features stack upSIM — An in-browser streaming iOS simulator lets you test in a near-real Apple environment without Xcode or a MacMAX — Rork Max generates native Swift apps for iPhone, iPad, Apple Watch, Apple TV, Vision Pro, and iMessage, with 2-click App Store publishingCHOOSE — Standard Rork ships cross-platform iOS/Android via React Native (Expo); Rork Max goes native. Pick based on where your app needs to runPRICE — It's free to start, with paid plans from $25/month. Rork Max sits above that as the premium productCREDIT — Credits don't roll over, so spreading usage week by week works better than saving it all for the start of the monthWORKFLOW — Reviews point toward generating a scaffold, then rewriting state and data layers yourself — internalizing structure speeds up iteration as features stack upSIM — An in-browser streaming iOS simulator lets you test in a near-real Apple environment without Xcode or a Mac
TAG

Rork

575 articles
Back to all tags
Related:
React Native151Expo119iOS54AdMob50App Store45troubleshooting35app development33Rork Max31indie developer27Indie Dev27Troubleshooting27App Development27
Rork Dev/2026-05-28Intermediate

Tracking Down BGTaskScheduler.submit Error Code=1 (Unavailable) in Rork iOS Apps

A field-tested checklist for diagnosing BGTaskScheduler.submit failing with Error Code=1 (Unavailable) in iOS apps built with Rork, walking through the six causes that account for nearly every case.

Rork Dev/2026-05-28Intermediate

Three Weeks of Moving Six Wallpaper Apps from AsyncStorage to MMKV in Rork

Notes from three weeks of gradually moving six wallpaper apps from AsyncStorage to react-native-mmkv. Personal write-up from an indie developer who has been shipping iOS and Android apps since 2014.

Rork Dev/2026-05-27Advanced

Three-Layer StoreKit 2 Entitlement Sync for Rork Apps: Launch, Background Refresh, and Restore

When you wire StoreKit 2 subscriptions into a Rork-generated app, Transaction.updates alone leaves gaps. Here is the three-layer sync I run across six wallpaper apps — launch-time re-evaluation, Background App Refresh, and Restore Purchase — including measured refresh rates and the AdMob revenue I recovered.

Rork Dev/2026-05-27Intermediate

Killing the Recurring iOS Missing Compliance Warning in Rork with One Info.plist Key

Walks through why every Rork-built iOS upload shows a yellow Missing Compliance flag on TestFlight, and how a single ITSAppUsesNonExemptEncryption key in your app.json removes it for good. Written from the perspective of an indie developer shipping six wallpaper apps in parallel.

Rork Dev/2026-05-27Intermediate

Two Months of Rork × Hermes in Production — Cold Start and Memory in Real Numbers

What actually happens to cold start, memory, and crash rates after running Rork-generated apps with Hermes enabled in production for two months. Field notes from an indie developer with 50 million cumulative downloads.

Rork Dev/2026-05-27Advanced

Making Silent Failures Visible Across 6 Rork Apps: An Early-Warning Design Note for Non-Crash Degradation

Notes from running 6 wallpaper apps in parallel and the layer I built in 3 weeks to make Crashlytics-invisible failures observable. Beacons, timeouts, and a small Cloudflare Worker for cross-app aggregation.

App Dev/2026-05-26Advanced

Bolting WidgetKit onto a Rork iOS App: Implementation Notes from Rolling It Out to Six Wallpaper Apps Simultaneously

A hands-on note on adding a WidgetKit Extension to a Rork-generated iOS app, with operational lessons from rolling out widgets to six wallpaper apps at once — App Group plumbing, Timeline Provider choices, memory ceilings, and ASO side effects.

Rork Dev/2026-05-26Intermediate

iOS Foreground Notifications Disappear in Expo — A Practical Fix Guide

A focused walkthrough of why iOS silently drops push notifications when the app is in the foreground, and how to wire setNotificationHandler correctly for iOS 14+ with expo-notifications.

Rork Dev/2026-05-26Intermediate

Two Weeks Tightening Up iPad Support for a Rork-Generated Wallpaper App

Notes from spending two weeks tightening up iPad support for a wallpaper app I scaffolded with Rork. Coming from an iPhone-centric indie practice since 2014, I cover where Rork's defaults stopped, how the AdMob adaptive banner misbehaved on iPad, and what changed in retention afterwards.

Rork Dev/2026-05-26Advanced

Aggregating App Store Connect, RevenueCat, and AdMob into One Morning Digest with Cloudflare Workers — A Six-App Indie Architecture

A practical architecture for indie developers running multiple Rork apps: aggregate App Store Connect API, RevenueCat REST, and AdMob Reporting API in a Cloudflare Workers Cron job and ship a single daily Slack digest each morning.

Business/2026-05-25Advanced

How I Layered Rewarded, Interstitial, and App Open Ads to Lift ARPDAU 1.4× on My Wallpaper App

Optimizing AdMob's three formats individually hit a ceiling — they were eating each other's impressions. After redesigning Rewarded, Interstitial, and App Open as a coordinated 3-layer system with strict role separation and an exclusion gate, ARPDAU climbed 1.4× over nine weeks. The full playbook, code, and weekly numbers.

Rork Dev/2026-05-25Intermediate

Fixing Layout Bleed on Android 15 (API 35) in Rork Apps

Once you bump targetSdkVersion to 35, Android 15 enforces edge-to-edge display, and Rork-generated tab bars and headers start sliding under the system bars. Here are the patterns I use with react-native-edge-to-edge and useSafeAreaInsets to fix it properly.