Overview
Porua is a browser extension and server stack that converts text to natural-sounding speech with 28 English voices. Built with Rust for high performance and modern web technologies for seamless integration, it provides a complete text-to-speech solution for web browsing.
Demo
Key Features
Natural Speech Quality
Powered by Kokoro v1.0 TTS model with 28 high-quality voices (American & British)
Skip Forward & Back Controls
Navigate through content effortlessly with local caching for seamless reading experience
Real-Time Text Highlighting
Text synchronization with audio playback for enhanced reading comprehension
High Performance
Engine pooling for concurrent requests and intelligent text chunking for long texts
Streaming Audio
Multipart response streaming with phrase-level timing metadata
Security
Web Crypto API encryption for API key storage
Technical Architecture
Browser Extension
The extension is built with modular ES6+ JavaScript and bundled with esbuild. It features a content script that injects floating controls into web pages, background service workers for API communication, and a popup UI for configuration. The extension is compatible with both Chrome and Firefox.
- Modular architecture with clean separation of concerns
- Real-time audio playback with Web Audio API
- Phrase-level timing for synchronized text highlighting
- Encrypted local storage for sensitive data
TTS Server
The server is built in Rust using the Actix Web framework for high performance and reliability. It uses the Kokoro v1.0 (330MB) ONNX model for text-to-speech generation with support for 28 different voice styles.
- Actix Web HTTP server with async/await support
- Engine pooling for handling concurrent TTS requests
- Intelligent text chunking for processing long content
- Streaming multipart responses with timing metadata
- REST API with health monitoring endpoints
Model Attribution
Porua uses the Kokoro v1.0 TTS model (full 330MB version), an open-source, high-quality text-to-speech model:
- Model: Kokoro v1.0 by hexgrad
- ONNX Version: thewh1teagle/kokoro-onnx
- License: Apache 2.0
- Model Size: 330MB (full model)
- Quality: High-quality, natural-sounding speech with 28 voice options
Installation & Usage
The project includes automated installation scripts and detailed documentation for both the server and browser extension. The server automatically downloads required model files during installation.
Download the latest releases from the release page:
- Server: Available for Linux, macOS, and Windows
Look for releases starting with "Porua TTS Server" (taggedserver-v*) - Plugin: Compatible with Chrome and Firefox
Look for releases starting with "Porua Browser Extension" (taggedplugin-v*)
🚀 Coming Soon: A user-friendly server control app for macOS and Windows to make server management even easier.
For detailed installation instructions, usage guides, and API documentation, visit the GitHub repository.
Development
The project follows modern development practices with git hooks for code quality, automated testing, and continuous integration through GitHub Actions. The codebase is well-documented and designed for easy contribution.