React Native i18n-kit launched for New Architecture
Developer builds react-native-i18n-kit, a zero-dependency native localization toolkit for React Native supporting complex plurals.

Stock photo for illustration only, not from the actual event
- Built with Kotlin, Swift, and strict TypeScript for New Architecture
- Zero third-party dependencies for a lightweight and stable core
- Handles complex plural rules leveraging Intl.PluralRules in Hermes
- Robust error handling and memory safety features included
Localization is one of those features every app needs and nobody wants to think about. Developers often face challenges when upgrading React Native, enabling the New Architecture, meeting Google Play's 16 KB page size requirements, fixing incorrect Arabic plural forms, or preventing language settings from disappearing after an app restart.
To solve these exact issues, developer Rushikesh Pandit built react-native-i18n-kit: a fully native, zero-dependency localization toolkit for React Native, written in Kotlin, Swift, and strict TypeScript. It can be easily installed via npm install react-native-i18n-kit.
The core goals of the project were straightforward: native where it matters, zero third-party dependencies, New Architecture first, and a small hooks API designed to be difficult to misuse.
Handling plurals correctly is notoriously difficult since English has two plural forms while Arabic has six, and languages like French treat zero as singular. Instead of brittle hand-written rules, react-native-i18n-kit utilizes Intl.PluralRules built into Hermes to select the correct CLDR bucket for the active language.

Stock photo for illustration only, not from the actual event
Device locales are often messy, varying across formats like zh-Hans-CN, FR-ca, pt_BR, or legacy Android codes such as iw. The library's case-insensitive matcher processes input from the full tag down to language-script, language-region, and base language, ensuring consistent behavior across device languages and saved preferences.
Bad input such as NaN, Infinity, or invalid currency codes throws typed I18nKitError instances with stable error codes like INVALID_LOCALE or INVALID_ARGUMENT rather than crashing the screen or displaying raw error text to end users.
Creating an i18n library tailored specifically for React Native's New Architecture marks an important technical step. Because the New Architecture relies on synchronous communication through JSI rather than the legacy bridge, a native-first approach significantly reduces overhead and improves overall execution performance for internationalized applications.
The repository also includes a fully runnable example app supporting English, French, Arabic (RTL), and Hindi, complete with a device-locale card and plural counter. Testing is fully supported with copy-paste Jest mock recipes.
Requirements for running the kit include React Native 0.85 (New Architecture), Android API 29 or higher, iOS 15.1 or higher, and TypeScript 5+ with strict mode recommended.
Source: Dev.to
Found something wrong in this article? Report an issue with this article
Comments
Leave a Comment