Blog
Engineering notes from the team building i18nagent.ai and i18n-convert.

Prevent Missing Translations with Fallback Languages
Learn how to configure robust language fallback chains to prevent technical keys or blank UI spaces when app translations are missing or delayed.

Stop Concatenating Strings: Why App Localization Requires Message Formatting
String concatenation breaks translated app localization grammar and plurals. Learn how to implement message formatting for reliable software translation.

Validate Formatting and Plurals During AI App Localization
Learn how to validate formatting, variables, and plurals when using AI to translate UI strings, effectively preventing crashes in iOS and Android apps.

Unify Developer and Translator Workflows Through Git-Based Localization
Stop syncing localization spreadsheets. Learn how to unify developer and translator workflows using Git branches, pull requests, and CI/CD automation.

Localize App Push Notifications for Global Campaigns
Localize app push notifications using server-side techniques and payload best practices to boost engagement and prevent broken deep links for global users.

Hand Off App Strings to Vendors Without Creating Source Drift
Learn how to hand off app strings to localization vendors using structured formats like XLIFF without losing source context, string IDs, or creating drift.

Add Accessibility Checks to Your App Localization QA
Visible copy may be translated while screen-reader labels and language metadata remain wrong. Add accessibility checks to each locale's QA matrix.

Measure Localization Throughput Without Rewarding Bad Output
Measuring translation speed hides stale targets and rework. Track source-to-reviewed cycle time and first-pass integrity for accurate localization metrics.

Design a Localization Rollback Plan for Broken Releases
Learn how to build a localization rollback plan to quickly withdraw a bad locale, listing, or resource bundle without reverting your entire codebase.

Choose App Locales From Store Data Instead of Guesswork
Stop guessing which locales to translate. Learn how to use App Store and Google Play data to prioritize app localization for visibility, growth, and ROI.

Define Localization Ownership Across Product, Engineering, and Review
Define localization ownership across product and engineering teams. Establish accountability for source readiness, translation integrity, and launches.

Localize Release Notes Across App Store and Google Play
Release notes often arrive late and are disconnected from the product translation cycle. Learn how to localize release notes without delaying your app update.

Control Source String Changes Without Leaving Stale Translations
Learn how to manage source string changes and translation drift. Use source fingerprints to mark targets stale and require review after copy changes.

Build an AI Translation Review Workflow That Humans Can Audit
AI translates text quickly but makes review harder. Learn to separate structural checks from linguistic approval and build a safe, auditable workflow.

Give Translators Enough Context for Ambiguous UI Strings
Learn how to provide adequate context to translators for ambiguous UI strings to prevent costly localization errors and improve user experience.

Automate Localized App Store Screenshots Without Manual Retakes
Learn how to automate localized app screenshots for iOS and Android. Generate consistent, translated store assets with deterministic UI tests.

App Localization Release Workflow: UI, Store Listings, and Screenshots
Build an app localization workflow that coordinates UI copy, store listings, screenshots, review, and release QA without leaving stale locales behind.

We built an i18n format converter that covers 32 formats. Here's what we learned about the ones nobody talks about.
Releasing i18n-convert v0.3.0, a Rust CLI that converts losslessly between 32 localization formats. Notes on the strange ones: xcstrings, ARB, NEON, HJSON, iSpring XLIFF.