Native mobile translation for React Native & Expo
Empower your React Native and Expo mobile apps with instant translation. @lingvit/react-native caches strings locally, handles network dropouts gracefully, and switches languages on the fly.
What gets translated
- iOS and Android native platforms
- Expo managed and bare workflows
- AsyncStorage and MMKV persistent caching
- Real-time in-app language switching without app reload
- Fail-open behavior during network loss
- React Navigation screen titles and tab labels
- Push notification string translation
- TypeScript autocomplete and type safety
Setup guide
Install dependencies
Install @lingvit/react-native and AsyncStorage.
npm install @lingvit/react-native @react-native-async-storage/async-storageConfigure LingvitProvider
Wrap your root component with the provider in App.tsx.
import { LingvitProvider } from '@lingvit/react-native'; export default function App() { return ( <LingvitProvider projectKey="lng_pk_..."> <Navigation /> </LingvitProvider> ); }Translate strings with useLingvit()
Use the hook or <Trans> component inside your screens.
import { useLingvit } from '@lingvit/react-native'; export function HomeScreen() { const { t } = useLingvit(); return <Text>{t('Discover new products')}</Text>; }