Starred repos used

nico-martin/gemma4-browser-extension

License: MIT. The blueprint for running AI models in the browser with Transformers.js and a web worker. Earshot uses the same runtime and the same model choices: all-MiniLM-L6-v2 for matching by meaning, and Granite 4.0 350M for short answers. nico-martin/gemma4-browser-extension on GitHub

pinguy/kokoro-tts-addon

License: Apache-2.0. A local, offline Kokoro neural voice reader for browsers. Earshot's neural voice is the same Kokoro 82M model, and the featured voice list follows its menu. The add-on runs Kokoro on a local Python server; Earshot runs it inside the web page instead. pinguy/kokoro-tts-addon on GitHub

openai/whisper

License: MIT (code and model weights). The speech recognition models (Tiny English and Base English), used through ONNX conversions that your browser downloads from Hugging Face when you press Load voices. openai/whisper on GitHub

huggingface/distil-whisper

License: MIT. Distil-Whisper Small English, the most accurate listening option. huggingface/distil-whisper on GitHub

espeak-ng/espeak-ng

License: GPL-3.0-or-later. Turns English text into the phonemes Kokoro speaks. It runs in your browser as WebAssembly. Because Earshot ships this code, all of Earshot is licensed GPL-3.0-or-later. espeak-ng/espeak-ng on GitHub

Libraries that come with those projects

These aren't starred themselves. They're what the starred projects above are built on, so they're bundled in this repository with their licenses.

Transformers.js 4.2.0 (@huggingface/transformers)

License: Apache-2.0. The in-browser model runtime that gemma4-browser-extension is built on. Bundled in vendor/transformers.

ONNX Runtime Web 1.26 (onnxruntime-web)

License: MIT. The WebAssembly engine inside Transformers.js. Its engine files are bundled in vendor/ort, so nothing is loaded from a CDN.

phonemizer 1.2.1

License: Apache-2.0 for the wrapper, with eSpeak NG (GPL-3.0) compiled inside. It's the WebAssembly build of the starred espeak-ng. Bundled in vendor/phonemizer.

Models downloaded when you press Load voices

These are never stored in the repository. Your browser downloads them from Hugging Face, and only after you press Load voices.

Earshot's own code

The player, the VoiceOver mode, the live-region rules, the passage finder, the voice commands and the Kokoro glue are new code, written for this project. License: GPL-3.0-or-later. The full upstream license texts are in the NOTICE file and the vendor folders.

Source on GitHub