All Articles
Opening Your Rork Max App to Apple Intelligence — Designing App Intents Assistant Schemas and Handling What Doesn't Fit
How to make actions in a Rork Max-generated Swift app callable from Apple Intelligence using App Intents Assistant Schemas — mapping to the fixed schemas, routing what doesn't fit, availability fallbacks, and on-device testing.
Cloud-Synced Folders Break App Builds — Excluding Build Artifacts From Sync to Fix It for Good
A project living in Dropbox or iCloud Drive stopped building one morning. The cause was sync creating conflicted copies inside build artifacts. Here is how I excluded node_modules and Pods from sync to stop the recurrence, told as an indie developer's field notes.
Changing a Table Without Wiping User Data in Rork's expo-sqlite — A PRAGMA user_version Migration Runner
A crash on launch, only for existing users: no such column. That is what happens when you ship a table-structure change to installs that still hold the old schema. Here is the expo-sqlite migration layer I put in every Rork app, built on PRAGMA user_version, with the full runner and the operational rules behind it.
Your Rork Max App Loses the Photos a User Picked After Relaunch — The Trap of Holding Onto URLs Under Limited Photo Access
In a native Swift app generated by Rork Max, photos picked via PHPickerViewController become unreadable after relaunch — because holding onto a URL or PHAsset no longer works in the age of limited access. Here's a design that copies the actual bytes into your own storage the instant they're picked.
Start a Live Activity Without Launching Your Rork Max App — Designing Around a push-to-start Token That Never Arrives
In a native Swift app generated by Rork Max, you want to start a Live Activity from your server without the user ever opening the app. But the push-to-start token is never observed and it fails silently. Here's the cause and an observation layer that reliably captures the token.
Your Rork Max Health App Misses Overnight Steps — Designing Background Delivery When HKObserverQuery Dies Silently
In a native Swift health app generated by Rork Max, data recorded while the app is closed never arrives — and it's almost always because HKObserverQuery's background delivery stopped without a word. Here's how to isolate the layer that broke and an observation layer you can drop in as-is.
Direct Device-to-Device Sharing in Rork Max Apps — The Local Network Permission Trap That Makes MultipeerConnectivity Fail Silently
How to add serverless, nearby device-to-device sharing to a native Swift app generated by Rork Max. It works in the simulator but no peers ever appear on real devices — and the culprit is almost always a silent Local Network permission failure.
Should You Show a Read More Link? Let the Rendered Text Decide in Rork (Expo)
Clamping a product description to three lines and adding a Read more toggle sounds simple, until the toggle also appears under single-line text. This walks through measuring the real line count with onTextLayout so the toggle only shows when text actually overflows, covering iOS vs Android quirks, expand animation, and font scaling.
When Your App Store Connect API Pipeline Quietly Drops Days — Field Notes on JWT Expiry, Report Lag, and Reconciliation
Automated App Store Connect API pipelines rarely stop — they leak. This piece breaks down the three silent failure modes behind 401, 404, and 429, and shows how a fetch ledger, a 72-hour backfill window, and a weekly reconciliation query keep daily sales and review data complete.
When a Rork Video Call Is 'Connected' but Only One Side Can Hear — Field Notes on Instrumenting WebRTC's Silent Failures
Rork video calls that go one-way or quietly drop on the subway, diagnosed by measuring WebRTC with getStats instead of guessing. Covers ICE restart, verifying TURN relay, and clean teardown.
Rork Max Cloud Compilation — Shipping Native Apps Without Owning a Mac
How Rork Max's cloud compilation lets you build, device-test, and publish native iOS/iPadOS apps without a local Mac — including how to triage failed builds and when you should still keep a real Mac around.
Take One Contact, Not the Whole Book — iOS 18's ContactAccessButton
iOS 18 adds a limited tier to contacts access. With ContactAccessButton you can receive just the one contact a user picks, without ever asking for the whole address book. Assuming the native Swift Rork Max generates, here is the design and implementation.