🔧 Programmierung 🕛 kürzlich 3 Min Lesezeit
0

I built an offline Chrome extension that reads webpages aloud with AI voices and zero cloud calls

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht

Every text-to-speech Chrome extension I tried had one of two problems. Either it sent my text to a server, or it used the browser's built-in voices that sound like a GPS from 2012.



I wanted TTS that stays on my machine and doesn't sound terrible. So I built one.






What it does



GlowReadTTS is a Chrome extension that reads text aloud using AI voices bundled directly in the extension package. No cloud, no accounts, no API keys, no network calls at all.



Two ways to use it:



Right-click mode: Select text on any webpage, right-click, choose "Read with GlowReadTTS." It reads the text aloud and highlights each sentence on the page as it goes. A floating stop button appears at the top-right of the page so you can halt playback without opening the popup.



Popup mode: Open the extension popup, paste or type text, hit play.



15 AI voices (American and British English), speed control from 0.25x to 2x, streaming playback so audio starts quickly.






How a 96MB model fits in a Chrome extension



The AI voice model is about 96MB and ships entirely inside the .crx package. After install, there are no runtime downloads and no network calls. You can turn off wifi and it still works.



The voices sound significantly better than built-in browser TTS. 15 voices are bundled covering American and British English.






Architecture



The whole thing is vanilla JavaScript. No React, no build step, no bundler. Manifest V3.




CODE
background/    → service worker, context menu, message routing
content/ → in-page sentence highlighting, floating stop button
offscreen/ → audio playback + TTS inference
popup/ → extension UI (voice picker, text input, controls)
options/ → settings (speed, voice, performance toggle)
libs/ → bundled AI voice model + inference code






The offscreen/ part is worth explaining. Chrome extensions can't play audio from a service worker, so an offscreen document handles the TTS inference and pipes audio out. This is a Manifest V3 pattern that trips people up if you haven't seen it before.






The performance toggle



Cold-starting a 96MB model takes a few seconds. To avoid that delay on the first right-click read of a session, GlowReadTTS can optionally pre-warm the model whenever you select text on a page. This is on by default.



If you'd rather keep idle RAM minimal, switch it off in Settings. The first read will be slower, but subsequent reads in the same session stay fast.






Privacy



This is the whole point of the project.




  • Zero data collection. No analytics, no telemetry, no tracking.

  • Text never leaves the device. 100% local processing.

  • No accounts. No sign-up, no API keys.

  • The extension doesn't even have permission to make network requests.
    If you're reading a article nothing gets sent anywhere.






Status





  • License: Apache 2.0


  • Source: github.com/lavellehatcherjr/GlowReadTTS


  • Chrome Web Store: Submitted, pending review. I'll update this post with the install link once it's approved.
    If you find it useful, a ⭐ on the repo helps more than you'd think.






What's next



Additional language support is on my radar. The architecture is designed for it, so stay tuned.






Questions, feedback, or bugs? Open an issue.

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 44%
🟡 In Evaluierung 25%
🟢 Keine Auswirkung 14%
Spannende Innovation 17%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
2 Quellen
ChatGPT, Claude, and Grok all went down at once; enterprises need a backup plan
2 Quellen
OpenAI launches GPT-6 Astra
1 Quelle
What JPMorgan does differently with AI that any company can apply
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten I built an offline Chrome extension that reads webpages aloud with AI voices and zero cloud calls

Thematisch verwandte Begriffe: built, offline, Chrome, extension · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...