RORK LABJP
PRODUCT — Rork Max generates native Swift apps for iPhone, iPad, Apple Watch, Apple TV, Vision Pro, and iMessageNATIVE — Rork Max unlocks AR/LiDAR, Metal 3D games, Dynamic Island, Live Activities, HealthKit, and Core MLCLASSIC — The original Rork uses React Native (Expo), turning plain-English prompts into shippable iOS/Android appsFUNDING — Rork raised $2.8M from a16z (plus $15M more), reaching 743,000 monthly visits at 85% growthPRICING — Rork is free to start, with paid plans from $25/month; Rork Max is $200/monthCHOICE — Pick cross-platform Rork or Rork Max for deep Apple-native capabilities, depending on your goalPRODUCT — Rork Max generates native Swift apps for iPhone, iPad, Apple Watch, Apple TV, Vision Pro, and iMessageNATIVE — Rork Max unlocks AR/LiDAR, Metal 3D games, Dynamic Island, Live Activities, HealthKit, and Core MLCLASSIC — The original Rork uses React Native (Expo), turning plain-English prompts into shippable iOS/Android appsFUNDING — Rork raised $2.8M from a16z (plus $15M more), reaching 743,000 monthly visits at 85% growthPRICING — Rork is free to start, with paid plans from $25/month; Rork Max is $200/monthCHOICE — Pick cross-platform Rork or Rork Max for deep Apple-native capabilities, depending on your goal
Articles/AI Models
AI Models/2026-06-23Advanced

On-Device Translation in a Rork Max App with iOS 18 — Free, Offline, Multilingual

Add free, offline, real-time translation to a Rork Max Swift app using the iOS 18 Translation framework. Covers checking language availability, batch translation, and avoiding empty results — all with working Swift code.

Rork Max181iOS 183TranslationOn-device AI2Swift29

Premium Article

Being able to read the reviews and in-app posts that arrive from overseas users, right where they appear — that has been a quiet frustration of mine for years. As an indie developer running several wallpaper and wellness apps, there are days when I reply to App Store reviews in close to thirty languages. Sending each one through an external translation API kept snagging on three things at once: network, cost, and privacy.

With iOS 18, Apple opened up the Translation framework. It runs entirely on device, costs nothing extra, and once a model is downloaded it keeps working offline. Because no text leaves the device, whatever a user wrote never travels to a third-party server. The catch is that React Native cannot touch this cleanly. From a Rork-generated Expo app, you would have to bridge into a Swift framework yourself, which means writing native modules. It only became a realistic option once Rork Max started generating Swift directly — and that is where this guide begins.

Why in-app real-time translation is a native-only feature

The Translation framework borrows the OS-integrated translation engine and language models directly. APIs like SwiftUI's .translationTask and TranslationSession are only callable from Swift. React Native's JavaScript layer has no built-in bridge for them, so you would have to write your own Expo config plugin and native module.

It is not strictly impossible in plain Rork (React Native / Expo). But wiring async results back to JS, monitoring model download state, and re-homing an API designed as a SwiftUI view modifier onto a bridge — by the time you finish, the "build it no-code" advantage is mostly gone. When Rork Max generates Swift, these pieces sit naturally inside a SwiftUI view instead. The code below assumes you are growing the screen code that Rork Max emitted, by hand.

What the Translation framework can and cannot do

Set expectations first. This is an area where over-promising leads to "that's not what I thought" later.

AspectBehavior
CostFree. No usage billing, no API key
OfflineSupported, but the language model must be downloaded first
PrivacyText is never sent off device (on-device processing)
LanguagesFollows the OS translation languages; some pairs are unsupported
Trigger modelView-scoped, user-initiated. Not meant for server-side batch jobs
OS requirediOS 18.0+ (some system-presented UI is 17.4+)

The biggest trap here is "not meant for server-side batch jobs." Translation is an API for foreground, in-app experiences — it is not designed for processing large volumes of text overnight in a backend. In my case I narrowed it to exactly the foreground job it is good at: drafting review replies, and showing an instant translation of a user post that is on screen.

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
If you have been leaving overseas reviews and user posts unread, you can add free, offline in-app translation today
You will learn the real TranslationSession patterns — availability checks, batch translation, and handling un-downloaded models — as working Swift
You will understand why this is out of reach in React Native (plain Rork), making it a concrete reason to choose the $200/month Rork Max tier
Secure payment via Stripe · Cancel anytime

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Rork Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $10 for lifetime access
View Membership →

Related Articles

AI Models2026-06-15
Building a Room-Measuring App with Rork Max and RoomPlan — Absorbing Scan Variance by Design
Now that Rork Max generates native Swift, a LiDAR-based RoomPlan scanning app is a realistic project for an indie developer. Scan results drift depending on device and how you hold it. This walks through how to absorb that drift in your app design and export stable dimensions.
AI Models2026-03-10
How Claude Opus 4.6 Powers Rork Max's Development Engine
Discover how Claude Opus 4.6 and Anthropic's AI engine power Rork Max to generate native Swift apps in minutes.
AI Models2026-06-20
Rork Max Credits Drain on Rework, Not Features — Where to Let AI Run and Where to Finish by Hand
Rork Max credit usage is driven less by how complex your app is and more by how many times you regenerate a screen. Here is a practical way to decide what to hand to AI and what to finish by hand, from an indie developer who ships to the stores solo.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →