jamsch/expo-speech-recognition
Speech Recognition for React Native Expo projects
What it solves
expo-speech-recognition is a cross-platform library for React Native and Expo projects that provides a unified API for speech-to-text functionality. It eliminates the need to write platform-specific code for iOS, Android, and the Web, allowing developers to implement voice input and transcription services across all three environments using a single codebase.
How it works
The library acts as a wrapper around native speech recognition engines: iOS SFSpeechRecognizer, Android SpeechRecognizer, and the Web SpeechRecognition API. It exposes these capabilities through a set of hooks (like useSpeechRecognitionEvent) and a direct module API (ExpoSpeechRecognitionModule) that allows developers to to start, stop, and abort recognition sessions.
Who it’s for
It is designed for React Native and Expo developers who want to integrate voice-to-text capabilities into their mobile and web applications without managing the native implementation details of each platform.
Highlights
- Cross-Platform Support: Unified API for iOS, Android, and Web.
- Tuning Options: Support for continuous recognition, interim results, and custom contextual strings to improve accuracy for specific words.
- Audio Management: Ability to persist audio recordings to local files and transcribe audio files directly.
- Advanced Android Features: Support for language detection and switching on Android 14+.
- Volume Metering: Built-in support for monitoring input volume changes in real-time.
- Developer Experience: Includes a config plugin for easy permission and manifest configuration in Expo projects.
Related
- Project
- Project
- Project
- Project
- Project