Azure Simple TTS
A simple web interface for Azure Neural Text-to-Speech
For years, I've wanted to listen to text instead of reading it. My eyesight degraded during university — dark lecture halls, chalk on green boards — and reading long texts on screen became genuinely tiring. Back then, Windows Phone had it right: Edge on my Lumia could read .epub aloud, cleanly, with no friction. Android never matched that. The accessibility-focused TTS options feel designed for screen readers, not for someone who just wants to paste an article and press play. The better alternatives are either paywalled or fall back on Google's robotic voice.
The first attempt at a real solution was AzSpeech, a Python desktop tool built in May 2024. It started as a simple script: copy text to the clipboard, hit a keyboard shortcut to run the script, and a WAV file plays. Later came a PyQt6 interface with voice and region selection. It still runs on my PC today – the keyboard shortcut is still there, and I never need to open the interface. But it was tied to a local install, which meant it was useless from a phone.
Before settling on my own solution, I tested SpeakItAI, a Gradio-based interface that also uses Azure Neural TTS. It got close enough to bother deploying on my VPS, but never actually worked reliably. The WebSocket connection was unstable, the interface was buggy, generated files had no meaningful names, and the overall experience made it something I tried once and never opened again.
The need became urgent in February 2026 when a throat inflammation left me unable to speak. Nothing I could find let me type a sentence quickly and have it played out loud — not in a usable way. I built azure-simple-tts in about thirty minutes with Claude: a single HTML file, no backend, using the Microsoft Cognitive Services Speech SDK directly from the browser. Your Azure API key stays in localStorage, audio is cached in IndexedDB, and nothing touches a server except the Azure TTS endpoint itself.
After the first real use, a few things became obvious: I needed a history, because someone might not hear what was just said. I needed to be able to delete individual entries while keeping reusable phrases. I needed to send text with the keyboard, particularly from Android. Those features followed quickly. The result is genuinely the tool I was looking for in 2026 and couldn't find.
Azure Neural voices are high quality, and the free tier covers 500,000 characters per month; more than enough for personal use. The entire tool is a single index.html file you can host anywhere or open locally.