Maya Workflow Kit
The whole Maya workflow in Blender, in one install. Free and open source, Blender 4.5 – 5.2.
翻譯準備中
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Reads any web page aloud in natural AI voices, from cloud or local models. Supports Kindle Cloud Reader.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Read any web page aloud with on device AI voices. Supports Kindle online reader.
Features · Privacy · Report an issue
Narro is a Chrome extension that reads the page you're on and highlights each sentence as it's spoken. Use a cloud voice with your own API key, or a voice that runs entirely in your browser, with no account and no server. It also supports Kindle Online Reader.
| Engine | Notes | |
|---|---|---|
| Cloud | OpenAI | gpt-4o-mini-tts with style instructions, tts-1, tts-1-hd |
| ElevenLabs | Your own voices, listed with your key | |
| Google Gemini | Gemini TTS voices | |
| OpenRouter | One key for speech models from many providers | |
| In your browser | Kokoro-82M | 8 voices in English |
| Supertonic 2 | 10 voices in English, Spanish, French, Portuguese and Korean | |
| Piper | Popular piper-voices in several languages | |
| Kitten TTS Nano | 8 voices in English (Jasper, Bella, Luna, Bruno, Rosie, Hugo, Kiki, Leo); the smallest download | |
| Other | Local server | Any OpenAI-compatible /v1/audio/speech server, e.g. Kokoro-FastAPI |
| System voices | Your computer's built-in voices |
Each model downloads once and then works offline. Memory is what Narro uses in total at its peak while reading, as Chrome's Task Manager shows it.
| Model | Download | Memory while reading |
|---|---|---|
| Kokoro-82M on CPU | 92.4 MB | about 700 MB |
| Kokoro-82M on WebGPU | 325.5 MB | about 1050 MB |
| Supertonic 2 on CPU | 262.9 MB | about 950 MB |
| Supertonic 2 on WebGPU | 262.9 MB | about 800 MB |
| Piper, medium-quality voice | 63.2–63.5 MB | about 800 MB |
| Piper, high-quality voice | 113.9–120.8 MB | about 800 MB |
| Kitten TTS Nano 0.8, CPU | 27.7 MB, all 8 voices | about 500 MB |
Download sizes are the model files on Hugging Face. Memory was measured in Chromium on an M1 Pro, reading a 12-paragraph article with the model already downloaded, and rounded to 50 MB; expect some variation between machines. Most of it is the speech runtime the three engines share, which is why a small Piper voice needs about as much as Kokoro. Kokoro and Supertonic use WebGPU when Device is Auto and the browser supports it; the popup shows the figures for your setup.
Install Narro from the Chrome Web Store, then click the Narro icon on any page, choose a voice engine and press Read this page.
To try the latest changes before they reach the store:
git clone https://github.com/swrdfish/Narro.git
cd Narro
npm install
npm run build
chrome://extensions and turn on Developer mode.dist/ folder.Keyboard shortcuts are shown in the popup and can be changed at chrome://extensions/shortcuts.
chrome.storage.local on your computer. They're never synced and never sent anywhere except to the provider they belong to.Kindle Cloud Reader shows book pages as images rather than text, so on read.amazon.com, .co.uk, .in, .de, etc. Narro runs
OCR (text recognition) on the page you can see, entirely on your computer, using Tesseract. It then reads the recognized text with your chosen voice.
Narro is an independent project. It isn't affiliated with or endorsed by Amazon. Kindle is a trademark of Amazon.com, Inc. Narro only reads pages you have open yourself, but automated use of Kindle Cloud Reader may be restricted by Amazon's terms. Check that your use complies with them.
The Model dropdowns for OpenAI, ElevenLabs and Gemini, and the Piper voice list, come from
src/models.json. Each list maps an ID to the label shown in the dropdown:
{ "openai": { "tts-1": "tts-1 · fastest" }, "piper": { "en_US-lessac-medium": "Lessac · US English, female" } }
The local section holds the download size and memory of each in-browser model, shown in the popup:
per device (wasm for CPU, webgpu) for Kokoro and Supertonic, and per voice for Piper. A Piper
voice added to the list needs an entry there too.
{ "local": { "piper": { "en_US-lessac-medium": { "downloadMB": 63.2, "memoryMB": 800 } } } }
src/models.json and run npm run build.dist/models.json and reload the extension. The next build overwrites this copy.A saved model that's missing from a list stays selectable. The local server's model list comes from
its own /v1/models endpoint.
npm run watch # rebuild the extension on changes
npm test # test suite (Node's test runner + jsdom)
npm run site:preview # preview the landing page (site/) at http://localhost:8000
After a rebuild, reload Narro at chrome://extensions, then reload the tab you're testing on. See
CONTRIBUTING.md for guidelines.
Found a bug or have an idea? Open an issue. You can also use the Send feedback or report an issue link at the bottom of Narro's popup.
Narro is a Manifest V3 extension with no framework and no build-time code generation: plain ES modules bundled by esbuild.
flowchart LR
UI["Popup and settings<br/>(options.html)"] -->|start, pause, stop| BG
KEYS["Shortcuts and<br/>context menu"] --> BG
BG["background.js<br/>service worker"] <-->|sentences, playback events| CS
subgraph TAB["The tab being read"]
CS["content.js<br/>text, highlighting, player"]
end
BG <-->|speech requests, audio events| OFF["offscreen.js<br/>synthesizes and plays audio"]
OFF --> LW["local-worker.js<br/>Kokoro, Supertonic, Piper, Kitten"]
OFF --> CLOUD[("Cloud speech APIs<br/>OpenAI, ElevenLabs, Gemini, OpenRouter")]
OFF --> OCR["Tesseract OCR<br/>Kindle pages"]
Design notes
Narro's source code is released under the MIT License.
The built extension also includes third-party components under their own licences, including eSpeak NG (GPL-3.0-or-later) through the phonemizer used by Kokoro, Piper and Kitten TTS. See THIRD_PARTY_NOTICES.md for details, including the licences of models that are downloaded at runtime.