localization-rtl

Validate iOS 26 app internationalization and RTL layout correctness.

1|Updated Jun 9, 2026
One-click install
npx skills add https://github.com/Emasoft/emasoft-complete-ios-app-authoring --skill localization-rtl
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: localization-rtl
Source: https://github.com/Emasoft/emasoft-complete-ios-app-authoring/tree/main/skills/localization-rtl
Command: npx skills add https://github.com/Emasoft/emasoft-complete-ios-app-authoring --skill localization-rtl

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and scripts (resource) components.

What problem does it solve?

iOS apps frequently break in non-English and right-to-left (RTL) locales like Arabic, Hebrew, and Persian due to hardcoded left/right layouts, concatenated untranslatable strings, missing plural support, and unhandled bidirectional text, leading to poor user experience for global audiences and increased App Store rejection risk.

Core Features & Use Cases

  • Full internationalization (i18n) support: Migrate to String Catalogs, implement ICU plurals, and use locale-aware FormatStyle for numbers, dates, and currency.
  • RTL layout correctness: Fix mirroring issues with logical leading/trailing layout, directional icon handling, and visual sentinel QA methods.
  • Bidirectional text handling: Resolve cursor jumps, phone number reordering, and mixed LTR/RTL content issues with Unicode bidi controls.
  • Use Case: Fix a broken Arabic settings screen that is left-aligned, has misordered phone numbers, and missing translations, then add RTL pseudolanguage tests to your CI pipeline.

Quick Start

Use the localization-rtl skill to fix the broken Arabic layout in your iOS app's settings screen, migrate all hardcoded user-facing strings to String Catalogs, and add RTL QA checks to your CI pipeline.

Frequently Asked Questions about localization-rtl

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix RTL layout issues in SwiftUI for Arabic and Hebrew locales?

Fix RTL layout issues in SwiftUI by using logical leading/trailing alignment instead of hardcoded left/right, applying directional icon handling, and implementing visual sentinel QA methods to validate mirroring correctness for Arabic, Hebrew, and Persian.

What's the best way to migrate hardcoded iOS strings to String Catalogs?

Migrate hardcoded iOS strings to String Catalogs by extracting user-facing text into the catalog, implementing ICU pluralization for dynamic counts, and applying locale-aware FormatStyle for numbers, dates, and currency formatting.

Why does bidirectional text break in iOS apps and how do I handle it?

Bidirectional text breaks in iOS due to unhandled Unicode bidi controls, causing cursor jumps and phone number reordering; resolve mixed LTR/RTL content issues by applying proper Unicode bidi controls in SwiftUI.

Can I implement runtime language switching in iOS 26 and Swift 6 projects?

Runtime language switching is supported in iOS 26 and Swift 6 projects, allowing users to change locales dynamically without app restarts while maintaining correct RTL layout and locale-aware formatting.

How do I add RTL pseudolanguage tests to my iOS CI pipeline?

Add RTL pseudolanguage tests to your CI pipeline by configuring Xcode 26 test targets to use RTL pseudolanguages, validating layout mirroring, detecting hardcoded left/right constraints, and verifying bidirectional text handling automatically.

When do I need ICU pluralization for iOS app internationalization?

ICU pluralization is needed for iOS app internationalization when displaying dynamic counts to global audiences, ensuring correct plural forms across all supported languages and preventing App Store rejection from poor user experience.