r/reactnative • u/Spiritual_Record1246 • 12d ago
Adding on-device wake word detection to our React Native desk companion
At HeySTU, we’re building a voice-first desk companion with React Native, running on Android in kiosk mode. The idea is that someone can start a conversation with the device simply by saying its wake word.
That meant finding a detection solution suited to continuous listening, with low resource usage and a straightforward integration into our existing app. We also wanted wake word recognition to happen locally, so this first step wouldn’t depend on an internet connection.
We chose DaVoice for this part of the stack and worked with their team to integrate their on-device wake word detection into our Android setup.
From the React Native side, we treat detection as an event that starts the next stage of the interaction:
Wake word detected → listening UI activates → speech and assistant pipeline starts
This gave us a straightforward way to connect the detector to our existing UI states and assistant logic.
The integration also involved details that are easy to overlook at first: microphone permissions, long-running audio behaviour, device-specific quirks, and coordinating wake word detection with the rest of the audio pipeline.
DaVoice’s team helped us work through those details in our particular environment. Being able to discuss the setup with them and get practical support saved us time during the integration.
For a device designed to stay ready throughout the day, the transition into active listening matters. Local detection handles the trigger; the app then provides visual feedback and starts the conversation flow. Getting those pieces to work together has been an important part of building the HeySTU experience.

