A Chrome extension that reads text aloud with natural AI voices. Meet Dorky - she reads anything you select on any webpage!
- 📖 Select any text and Dorky reads it to you
- 🎤 Ultra-realistic voice using ElevenLabs AI
- 💗 Cute pink button interface
- ⚡ Fast and responsive
- 🌐 Works on all websites
git clone https://github.com/YOUR_USERNAME/dorky-reader.git
cd dorky-reader- Get a free API key from ElevenLabs
- Copy
config.example.jstoconfig.js:cp config.example.js config.js
- Open
config.jsand add your API key:const ELEVENLABS_API_KEY = 'your_actual_api_key_here';
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode" (toggle in top right)
- Click "Load unpacked"
- Select the
dorky-readerfolder - Done! 🎉
- Navigate to any webpage
- Select text with your mouse
- Click the pink 📖 button that appears
- Listen to Dorky read! 🎧
- 📖 Pink = Ready to read
- ⏳ Orange = Loading audio
- 🔊 Green = Playing audio
- NEVER commit your
config.jsfile - it's already in.gitignore - API key stays on your computer only
- Share
config.example.jsinstead for others to set up
- Manifest V3 - Latest Chrome Extension standard
- Vanilla JavaScript - No dependencies
- ElevenLabs API - AI-powered text-to-speech
dorky-reader/
├── manifest.json # Extension configuration
├── scripts.js # Main functionality
├── config.js # Your API key (NOT in git)
├── config.example.js # Template for users
├── styles.css # Button styles (optional)
├── icons/
│ └── icon.png # Extension icon
└── README.md # This file
Currently uses ElevenLabs "Rachel" voice. You can change the voice by editing scripts.js line 49:
const voiceId = 'EXAVITQu4vr4xnSDxMaL'; // Rachel voicePopular voice IDs:
EXAVITQu4vr4xnSDxMaL- Rachel (female, natural)21m00Tcm4TlvDq8ikWAM- Adam (male, deep)pNInz6obpgDQGcFmaJgB- Sam (male, dynamic)
Find more at ElevenLabs Voices
- ElevenLabs free tier: 10,000 characters/month
- No credit card required
- Upgrade available for more usage
- Refresh the page
- Check that extension is enabled
- Make sure you selected text
- Check your API key in
config.js - Verify you have characters remaining (check ElevenLabs dashboard)
- Open DevTools (F12) and check console for errors
- Your API key is invalid or expired
- Get a new key from ElevenLabs
Pull requests welcome! Please:
- Fork the repository
- Create a feature branch
- Test thoroughly
- Submit PR
MIT License - see LICENSE file
- ElevenLabs for amazing TTS voices
- Chrome Extension documentation
Made with ❤️ by lily1c
Dorky is ready to read! 📚