For web HTML5 supports TTS and STT.
https://developer.mozilla.org/en-US/docs/Web/API/Web_Speech_API
TTS works on Chrome, Firefox, and Safari
STT works on Chrome.
For mobile both Android and iOS support TTS and STT APIs.
https://developer.android.com/reference/android/speech/package-summary.html
https://developer.apple.com/documentation/speech
Bot Libre’s open source web and mobile SDK also support TTS and STT (JavaScript, Android Java, iOS Objective C)
https://www.botlibre.com/sdk.jsp
You can also connect a bot on Bot Libre to any bot that supports a web API, to add TTS, STT, avatars, web, mobile, social media…