A Node.js library for adding voice interfaces with offline hotword detection and cloud speech recognition.
Sonus is a Node.js library for adding voice user interfaces (VUI) to hardware or software projects. It provides offline hotword detection using Snowboy, then streams audio to cloud speech recognition services like Google Cloud Speech for real-time transcription. It simplifies building always-listening voice interfaces similar to Alexa or Google Assistant.
Node.js developers building voice-controlled applications, IoT devices, or home automation systems that require offline wake-word detection and cloud-based speech recognition. It's particularly suited for projects on Linux (including Raspberry Pi) and macOS.
Developers choose Sonus for its simplicity and modular approach, bridging offline hotword detection with cloud speech APIs without complex setup. Its lightweight design and support for custom hotwords via Snowboy make it ideal for prototyping and deploying voice interfaces quickly.
:speech_balloon: /so.nus/ STT (speech to text) for Node with offline hotword detection
Integrates Snowboy for customizable hotword detection without internet, allowing personalized wake words via online training, as shown in the README's hotword setup.
Simplifies streaming to Google Cloud Speech API with minimal code, enabling real-time transcription results after hotword triggers, evidenced by the concise usage examples.
Specifically supports Linux including Raspbian, making it ideal for IoT and hardware projects on affordable platforms like Raspberry Pi, as highlighted in the platform support.
Offers a dead-simple API that bridges hotword detection and speech recognition without bloat, allowing quick prototyping, as demonstrated in the 'create your own Alexa in less than a tweet' snippet.
Only Google Cloud Speech is fully supported as a streaming service; other listed options like Alexa or Wit.ai are marked as not implemented, restricting flexibility.
Requires SoX installation for audio handling and relies on Snowboy for hotwords, which needs online training and adds setup complexity, as noted in the dependencies section.
Explicitly does not support Windows, limiting cross-platform development and excluding a large segment of the developer community.
The project's dependencies and lack of recent updates suggested by build badges may lead to compatibility issues with newer Node.js versions or cloud API changes.
Network-wide ads & trackers blocking DNS server
Code. Music. Live.
Open and inexpensive DIY IP-KVM based on Raspberry Pi
Exploits locked/password protected computers over USB, drops persistent WebSocket-based backdoor, exposes internal router, and siphons cookies using Raspberry Pi Zero & Node.js.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.