When "{n} items" Breaks Across Languages — Designing Quantity Strings with CLDR Plural Categories and Intl.PluralRules
The assumption that one is singular and everything else is plural falls apart in Russian and Arabic. Here is how to hold the CLDR plural categories as a map and render quantities correctly with Intl.PluralRules and i18next, drawn from localizing an indie wallpaper app into sixteen languages.
You Only Need to Capture the 6.9-inch iPhone for App Store Screenshots
App Store Connect only requires two screenshot sizes: the 6.9-inch iPhone and the 13-inch iPad. Building on Apple auto-downscaling for smaller devices, here is how I use fastlane snapshot and frameit to cut the screenshot count for a multi-language app.
Your Arabic Users See an Unmirrored Layout — RTL in a Rork (Expo) App and the Reload Trap
You added Arabic to a Rork-generated Expo app, but the screen never flips and the back button stays on the wrong side. The cause is that I18nManager.forceRTL requires a relaunch. This walks through detecting direction with expo-localization, applying it reliably with Updates.reloadAsync, swapping to marginStart, and mirroring only the arrows — all with working code.
Why Untranslated Strings Leak to Production Every Time You Add a Language — A Catalog and Gap-Detection Design for Rork (Expo) Apps
A design for stopping untranslated strings from leaking into production after you localize a Rork-generated Expo app. Covers a single source-of-truth catalog, CI-based missing/extra key detection, explicit fallback chains, plurals, and pseudolocalization for layout — with implementation.
Why Your Prices Show as “¥1234” on Some Phones — A Formatting Layer That Doesn't Trust Intl Alone in Expo
Same code, yet one device shows “¥1,480” and another “¥1480.” In Expo / Hermes, Intl leans on each device's locale data, so output can drift by OS and engine. Here is a resilient formatting layer that centralizes currency, number, date, and timezone handling and falls back gracefully where Intl is incomplete — with working code.
Running Rork Max Swift Apps in Many Languages with String Catalog
An operational design for taking the Swift apps Rork Max generates into multiple languages, centered on the .xcstrings String Catalog. From extracting strings to handling plurals, pouring in translations, and checking for breakage, these are the lessons from keeping multilingual apps running.
Don't Show Overseas Users a Hardcoded '$3.99' — Localizing Your Rork Max Paywall with StoreKit 2
Localizing the paywall in the native app Rork Max generates: never hardcoding price, letting StoreKit 2's displayPrice handle every currency and locale, computing the yearly 'savings' so it never breaks across currencies, and handling the production drift from regional pricing and exchange-rate changes.
How I Localized My Play Store Screenshots into 16 Languages — Swapping PSD Text with Python and Standardizing on Noto Fonts
An implementation log of localizing an Android wallpaper app's store screenshots into 16 languages: swapping PSD text layers per language with Python, auto-shrinking overflow, and assigning the right font per script — with the actual code and a font cheat sheet.
What Localizing My Wallpaper Apps' App Store Listings Taught Me — Translation Isn't the Hard Part, Being Read Locally Is
Field notes from localizing my wallpaper apps' App Store listings across many locales: where literal translation fell short, where the keyword field and screenshot copy actually moved the needle, and how I now prioritize localization as a solo developer.
Building Japan-Market Apps with Rork Max: LINE Login, PayPay, and Japanese UX Optimization
A complete guide to succeeding in Japan's app market with Rork Max. Covers LINE login, PayPay payment integration, Japanese UX design principles, and App Store ASO strategies that actually move the needle for indie developers.