React Native Speech
A high-performance text-to-speech library built for bare React Native and Expo, compatible with Android and iOS.
@mhpdev/react-native-speech is a high-performance text-to-speech library built for bare React Native and Expo, compatible with Android and iOS. It enables seamless speech management and provides events for detailed synthesis management.
Features
- High performance — built on Turbo Modules for a fast, native-like experience on Android and iOS.
- Full control — a complete set of methods for comprehensive speech synthesis management.
- Consistent playback —
pauseandresumesupport for iOS and Android. This functionality is not natively available on Android, so the library provides a custom implementation (API 26+) designed to emulate the iOS experience. - Optional audio ducking — automatically lowers other apps' audio to ensure clear, uninterrupted speech.
- Rich events — a comprehensive event system for precise synthesis lifecycle monitoring.
- Visual feedback — a customizable HighlightedText component for real-time speech visualization.
- Type safety — fully written in TypeScript with complete type definitions.
Compatibility
| Requirement | Value |
|---|---|
| Architecture | New Architecture (Turbo Modules) only. React Native 0.76+ has it enabled; 0.68–0.75 require manual setup. |
| React Native | New Architecture compatible versions (see above) |
| iOS | Uses your app's min_ios_version_supported from React Native; links AVFoundation |
| Android | minSdk 24 (library default, overridable). pause / resume require Android 8.0 (API 26+) |
| Expo | Supported with prebuild; not supported in Expo Go |
| Language | TypeScript with bundled type definitions |
Next steps
- Installation — add the package to your project.
- Quick start — speak your first utterance.
- API reference — every method, option, and type.
- Releases — version history and changelogs on GitHub.