RORK LABJP
NATIVE — Rork Max reaches AR and LiDAR scanning, Metal-backed 3D, Dynamic Island, Siri Intents, HealthKit, NFC, App Clips, and on-device Core MLIOS27 — iOS 27 Developer Beta 4 extends Siri AI to iPhone 15 Pro and 15 Pro Max plus the 16 and 17 lines, with noticeably faster responses than the first betaDESIGN — Apple's own design kits for iOS, iPadOS, and macOS 27 are now available for Figma and Sketch, ready for when you lay out UI for the new OSCANARY — Android 17, codenamed Cinnamon Bun, retires Developer Previews in favor of continuously updated Canary builds, which changes when you schedule testingSPARK — Gemini Spark in Android 17 drives apps directly to automate multi-step errands like booking a ride or placing an orderSCALE — Rork raised $2.8M from a16z and now draws roughly 743,000 visits a monthNATIVE — Rork Max reaches AR and LiDAR scanning, Metal-backed 3D, Dynamic Island, Siri Intents, HealthKit, NFC, App Clips, and on-device Core MLIOS27 — iOS 27 Developer Beta 4 extends Siri AI to iPhone 15 Pro and 15 Pro Max plus the 16 and 17 lines, with noticeably faster responses than the first betaDESIGN — Apple's own design kits for iOS, iPadOS, and macOS 27 are now available for Figma and Sketch, ready for when you lay out UI for the new OSCANARY — Android 17, codenamed Cinnamon Bun, retires Developer Previews in favor of continuously updated Canary builds, which changes when you schedule testingSPARK — Gemini Spark in Android 17 drives apps directly to automate multi-step errands like booking a ride or placing an orderSCALE — Rork raised $2.8M from a16z and now draws roughly 743,000 visits a month
ARTICLES

All Articles

All (952) Getting Started (81) Dev Tools (501) AI Models (109) Business (174) App Dev (87)
Dev Tools/2026-07-10Advanced

Every Key You Ship Is Public: Secret Boundaries and Rotation for Rork-Generated Apps

Unzip your own .ipa, run strings, and your environment variables are right there in plain text. Here is how I sort keys into three tiers, move the dangerous ones behind an edge proxy, and keep a rotation runbook that assumes leakage.

Dev Tools/2026-07-09Advanced

Getting Rork Max's Swift Through Swift 6's Strict Concurrency Checking

A field record of taking a Rork Max-generated SwiftUI app through Swift 6 complete concurrency checking: 217 warnings cleared target by target, where @MainActor actually belongs, and measured before/after numbers.

Dev Tools/2026-07-09Advanced

Holding Layer Boundaries in a Rork-Generated Expo App with ESLint and dependency-cruiser

Long-lived Rork-generated Expo apps quietly accumulate screens that import the API client directly. Here is how I froze 214 existing violations as a baseline, eliminated 17 circular dependencies, and made CI reject anything new for 38 extra seconds.

Dev Tools/2026-07-09Advanced

When Amplitude's Funnel Improved Overnight — Field Notes on Catching Event Schema Drift With a Self-Audit

In a Rork-built app, the Amplitude funnel showed signup-to-purchase conversion jumping from 8% to 19% overnight, yet revenue stayed flat. The cause was a property-name drift that inflated the count. Field notes on measuring the drift with an event contract and a runtime validator, then tightening it in stages.

Dev Tools/2026-07-08Intermediate

Your SVG Icon Shows in Expo Go but Vanishes in a Build — Making SVGs Render Reliably in Rork Apps

When a .svg import renders nothing, throws a resolve error, or ignores your theme colors in Rork and Expo apps, here is how to fix it with metro.config.js, react-native-svg-transformer, and currentColor — with working code.

Dev Tools/2026-07-08Intermediate

Building a Segmented Control With a Sliding Indicator in Reanimated

The stock segmented control looks out of place on Android. Here is a custom Reanimated component that measures each segment and slides the indicator, with complete code plus UI-thread rendering, accessibility, and RTL handling from real shipping notes.

Dev Tools/2026-07-08Advanced

Working Around Rork Max's 20-Geofence Wall with Dynamic Re-registration

In a native Swift app generated by Rork Max, geofences you registered quietly stop firing past a certain count — and it's almost always iOS's silent limit of 20 monitored regions per app. Here's a dynamic re-registration design that keeps only the nearest 20 live, plus a Swift implementation you can drop in.

Dev Tools/2026-07-08Advanced

When the Device Runs Out of Space, What Should Your App Protect?

Design Expo/React Native apps that assume writes can fail. Free-space budgets, LRU reclaim, data-protection tiers, and telemetry that surfaces silent failures — drawn from running six wallpaper apps.

Dev Tools/2026-07-07Intermediate

The App Icon Badge Still Says 3 — Rebuilding Expo Badge Counts Around a Single Source of Truth

Why an Expo app's icon badge drifts out of sync with real unread counts and refuses to clear — and how to rebuild it around a single source of truth, with working recompute-and-sync code and the production pitfalls that bite you.

Dev Tools/2026-07-07Intermediate

When In-App Review Prompts Fire but Your Ratings Never Move — Field Notes on Measuring Display Opportunities and Timing

You wired expo-store-review into your Rork app, yet the star count won't grow. The OS silently suppresses the dialog, so calling it doesn't mean it shows. These are field notes on measuring display opportunities and redesigning timing.

Dev Tools/2026-07-07Advanced

Which Generation Introduced This Bug? Building Provenance Into Rork Apps

When you regenerate the same screen again and again with an AI builder, a bug that shows up one day becomes impossible to trace to a specific generation. This is a design for keeping generation provenance across three layers—build stamp, ledger, and telemetry—so you can narrow a regression down to a single generation in minutes.

Dev Tools/2026-07-06Advanced

Migrating Rork Max SwiftUI to @Observable: Narrowing the Re-renders ObservableObject Was Spreading

Rork Max tends to generate SwiftUI apps built on ObservableObject and @Published, where a single state change re-evaluates every subscribing view. Moving to the Observation framework's @Observable narrows invalidation to the property level. Here is the migration path, plus the view-body execution counts I measured in Instruments before and after.