I thought that TTS models and runtimes surely must have reached a point where they can run effectively on a mobile device with WebGPU. Maybe a fully local webapp could be feasible?
Shortly after, I heard about Phonon here on HN and was motivated to spend a weekend with Claude and see what we could come up with :)
The result is:
- A fully local Audiobook/TTS webapp - An optimised Phonon runtime reaching ~4x increase in speed on WebGPU and CPU compared to stock Phonon - Streaming, so the audio starts quickly and continues to generate uninterrupted while the phone is locked - Library with an optional "auto-download" feature, so you can pre-render articles to be listened to later - Fully serverless and local, the bundle is hosted in Cloudflare workers, no backend, no database, no user accounts, no tracking. Only piece of backend logic is a simple proxy to use as fallback for fetching URLs that the browser is unable to fetch b/c of CORS
Depending on your OS version, you may need to enable WebGPU in iOS/Safari settings, Chromium-based browsers in chrome://flags (search for WebGPU and enable both settings), and allow JIT in Site Controls on Vanadium (GrapheneOS).