A Google Chrome Extension for easy webpage summarization with text-to-speech (TTS). This accessibility-focused extension provides instant spoken summaries of any webpage, helping users quickly understand content through clear, natural-sounding audio.
Note: This extension requires a DAISYS.ai account for text-to-speech functionality. Sign up for free to get started.
Page Summarizer is a Google Chrome Extension designed to make web content more accessible through audio summaries. With a single click or keyboard shortcut, it:
- Extracts the main content from any webpage
- Summarizes it using advanced AI (OpenAI, Anthropic, or xAI)
- Converts the summary to natural speech using DAISYS.ai
- Plays the audio automatically in a beautiful mini-player
Perfect for:
- ποΈ Visual accessibility needs
- π§ Audio learners
- β±οΈ Quick content consumption
- π Listening while multitasking
- π Research and study
- One-click page summarization - Summarizes webpage content in 1-2 paragraphs
- Smart categorization - Long pages are broken into digestible categories
- Text explanation - Select any difficult text and get a simplified explanation
- Automatic audio playback - Summaries start playing immediately
- Beautiful audio player - Modern, compact audio player window with visual feedback
Ctrl+Shift+S(Cmd+Shift+S on Mac) - Summarize current pageCtrl+Shift+E(Cmd+Shift+E on Mac) - Explain selected text
- Multiple LLM providers: OpenAI, Anthropic Claude, xAI Grok
- Custom API endpoint support
- Always outputs in English for consistency
- Optimized prompts for spoken content
- Natural-sounding DAISYS TTS voices (setup: speak.daisys.ai)
- WebSocket streaming for low latency
- Automatic fallback to standard generation
- Voice customization options
-
DAISYS.ai Account (Required for text-to-speech)
- Sign up at https://speak.daisys.ai
- DAISYS provides the natural-sounding voices that make this extension work
- You'll need your DAISYS email and password for configuration
- Free tier available with usage limits
-
LLM API Key (Required for AI summaries)
- Choose one of:
- OpenAI (https://platform.openai.com)
- Anthropic Claude (https://console.anthropic.com)
- xAI Grok (https://x.ai)
- You'll need an API key from your chosen provider
- Choose one of:
-
Clone this repository:
git clone https://github.com/daisys-ai/pagesummarizer.git cd pagesummarizer -
Set up environment variables (optional):
cp .env.example .env # Edit .env with your credentials (if running local server) -
Install in Chrome:
- Open Chrome and navigate to
chrome://extensions/ - Enable "Developer mode" in the top right
- Click "Load unpacked"
- Select the
pagesummarizerfolder
- Open Chrome and navigate to
- Click the extension icon and go to Settings
- Configure your DAISYS account:
- Enter your DAISYS.ai email and password
- Select or generate a voice
- Configure your AI provider:
- Choose your LLM provider (OpenAI, Anthropic, xAI, or custom)
- Enter your API key
- Select the model
- Navigate to any webpage
- Click the extension icon and press "Summarize This Page" OR
- Use the keyboard shortcut
Ctrl+Shift+S - Audio will automatically start playing in a separate window
- Select any text on a webpage
- Press
Ctrl+Shift+E - Get a simplified explanation in audio format
- Go to Settings β Keyboard Shortcuts
- Click "Customize Shortcuts"
- Set your preferred key combinations
- Manifest V3 Chrome extension
- Service Worker for background processing
- Content Script for webpage interaction
- WebSocket streaming for real-time audio
- Separate audio player window for persistent playback
page-summarizer/
βββ manifest.json # Extension configuration
βββ background.js # Service worker
βββ popup.html/js/css # Extension popup UI
βββ content.js # Content script
βββ audio_player.html/js # Audio player window
βββ websocket_*.js # WebSocket handling
βββ daisys_*.js # DAISYS API integration
βββ CLAUDE.md # Development notes
- API keys stored locally in Chrome storage
- No external data collection
- All processing through configured APIs
.envfiles excluded from repository
- Chrome browser
- DAISYS.ai account (https://speak.daisys.ai)
- LLM API key (OpenAI, Anthropic, or xAI)
- DAISYS.ai API: Essential for text-to-speech functionality
- Sign up at https://speak.daisys.ai
- Provides natural, expressive voices
- WebSocket streaming support for low latency
- LLM API: For content summarization and explanation
- OpenAI: GPT-3.5-turbo or GPT-4
- Anthropic: Claude 3 Haiku/Sonnet/Opus
- xAI: Grok 2
No build process required - the extension runs directly from source files.
- Check DAISYS credentials in settings
- Ensure you have selected a voice
- Check browser console for WebSocket errors
- Try the fallback mode (will use standard generation)
- Verify LLM API key is valid
- Check API rate limits
- Ensure webpage has sufficient content
- Check browser console for API errors
- Check for conflicts with other extensions
- Customize shortcuts via Settings
- Ensure the webpage is not blocking keyboard events
- All API calls are made directly from your browser
- No data is sent to third-party servers (except configured APIs)
- API keys are stored locally and never transmitted
- No analytics or tracking
This project is licensed under the MIT License with Non-Commercial Restriction.
- β Free to use for personal projects
- β Free to use for educational purposes
- β Free to modify and distribute
- β Cannot be used for commercial purposes
- β Contributions welcome!
See the LICENSE file for full details. For commercial licensing, please contact DAISYS AI.
We welcome contributions! Please see our Contributing Guidelines for details.
- π Report bugs
- π‘ Suggest features
- π§ Submit pull requests
- π Improve documentation
Remember: All contributions must respect the non-commercial license.
- Follow our Code of Conduct
- Be respectful and inclusive
- Help others learn and grow
For issues or questions:
- Check the troubleshooting section
- Review browser console for errors
- Ensure API keys are valid and have credits
- Open an issue on GitHub
- DAISYS for providing natural TTS voices
- OpenAI, Anthropic, and xAI for LLM APIs
- Chrome Extensions team for Manifest V3 documentation