🚀 A powerful Chrome extension for real-time webpage translation with multi-API support
|
|
| Interface Language | Native Name | Flag |
|---|---|---|
| English | English | 🇬🇧 |
| Chinese Simplified | 中文简体 | 🇨🇳 |
| Chinese Traditional | 中文繁體 | 🇹🇼 |
| Japanese | 日本語 | 🇯🇵 |
| Korean | 한국어 | 🇰🇷 |
| Spanish | Español | 🇪🇸 |
| French | Français | 🇫🇷 |
| German | Deutsch | 🇩🇪 |
| Russian | Русский | 🇷🇺 |
- 🤖 Custom AI Prompts - Personalize translation behavior
- 📦 Batch Processing - Optimize multiple translations
↔️ RTL Support - Arabic, Hebrew, Persian support- ♿ Accessibility - ARIA, keyboard shortcuts, screen reader
- 🔄 Auto-translate - Smart language detection
- 🚫 Site Exclusion - Configure never-translate sites
📥 Quick Install Guide
# 1. Clone the repository
git clone https://github.com/yourusername/ultratranslate.git
# 2. Open Chrome Extensions
chrome://extensions/
# 3. Enable Developer Mode
Toggle → ON
# 4. Load Extension
Click "Load unpacked" → Select folder| Step | Action | Description |
|---|---|---|
| 1️⃣ | Download | Clone or download this repository |
| 2️⃣ | Open Extensions | Navigate to chrome://extensions/ |
| 3️⃣ | Developer Mode | Enable toggle in top right |
| 4️⃣ | Load Unpacked | Click and select extension folder |
| 5️⃣ | Success! | Extension icon appears in toolbar |
- Click the UltraTranslate icon in your browser toolbar
- Select your target language from the dropdown
- Toggle "Preserve Original" if you want to keep both texts
- Click "Translate Page" to start translation
- No configuration required
- Free to use
- Works out of the box
- Get your API key from DeepSeek Platform
- Open extension settings (⚙️ button in popup)
- Go to API Configuration section
- Select "DeepSeek" from dropdown
- Enter your API key
- Save settings
- Get your API key from OpenAI Platform
- Open extension settings
- Select "OpenAI" from dropdown
- Enter your API key
- Optionally customize the translation prompt
- Save settings
- Get APP ID and Secret Key from Baidu Translate
- Open extension settings
- Select "Baidu" from dropdown
- Enter credentials in format:
appid:secretkey - Save settings
- Navigate to any webpage you want to translate
- Click the UltraTranslate icon
- Click "Translate Page"
- Watch the progress indicator as the page translates
- Original text will be shown with reduced opacity, translations highlighted in green
- Click "Stop Translation" button to halt ongoing translation
- Useful for large pages or if you want to cancel
- Use keyboard shortcuts:
Alt+T: Toggle translation on/offAlt+O: Toggle original text visibility
- Open settings page
- Navigate to Translation section
- Enter custom prompt in the text area
- Use
{language}placeholder for target language - Example: "Translate to {language} keeping technical terms, be concise and natural"
- Adjust batch size in settings (default: 50 texts)
- Lower values = more accurate but slower
- Higher values = faster but may miss context
- Translation delay between batches can be adjusted (default: 50ms)
- Cache Size: View current number of cached translations
- Cache Limit: Maximum 1000 translations stored
- Cache Expiry: Default 24 hours
- Clear Cache: Remove all cached translations
- Translation Style: Choose from Highlight, Underline, Bubble, or Side-by-side
- Translation Color: Customize the highlight color
- Font Size Adjustment: Scale translated text (50-150%)
- Original Text Opacity: Adjust visibility of original text (0-100%)
Add URLs or domains that should never be auto-translated:
example.com
github.com
localhost
Enable console logging for troubleshooting translation issues
- Export: Save all settings to JSON file for backup
- Import: Restore settings from previously exported file
- Reset: Return all settings to default values
- Manifest V3: Modern Chrome extension architecture
- Content Script: Injects translation functionality into web pages
- Background Service Worker: Handles API calls and message routing
- Options Page: Full settings management interface
- Popup Interface: Quick access controls
- Text Detection: TreeWalker API with NodeFilter for efficient DOM traversal
- Filtering: Comprehensive rules to skip non-translatable content
- Segmentation: Intl.Segmenter API for accurate sentence splitting
- Batching: Intelligent grouping by context and similarity
- Translation: Parallel API calls with concurrent limit
- Display: DOM manipulation with original text preservation
- LRU Cache: Reduces duplicate API calls
- Batch Processing: Groups similar texts for efficiency
- Concurrent Translation: Processes multiple batches simultaneously
- Debounced Mutations: Prevents excessive re-translation
- WeakMap Storage: Memory-efficient original text storage
- All translations are processed through official API endpoints
- API keys are stored locally in Chrome's secure storage
- No data is collected or transmitted to third parties
- Original page content is never modified permanently
- Cache is stored locally and expires automatically
- Right-click extension icon and select "Options"
- Or go to
chrome://extensions/→ UltraTranslate → Details → Extension options
- Check if API key is configured (for non-Google services)
- Ensure the page has finished loading
- Try refreshing the page
- Check console for errors (F12 → Console)
- Verify site isn't in excluded list
- Reduce batch size in settings
- Clear cache if it's too large
- Check internet connection
- Consider using Google Translate (fastest)
- Some dynamic content may load after initial scan
- Try re-translating after page fully loads
- Check if content is in an iframe (limited support)
- Initial release with multi-API support
- Preserve original text feature
- Dark theme UI
- 9 interface languages
- Advanced text filtering
- Translation caching
- Loading indicators
- Accessibility features
- RTL language support
Contributions are welcome! Please feel free to submit issues or pull requests.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
- Use consistent indentation (2 spaces)
- Follow existing naming conventions
- Add comments for complex logic
- Ensure accessibility standards are met
This project is provided as-is for educational and personal use.
- Chrome Extensions API documentation
- Translation API providers
- Open source community
For issues, questions, or suggestions:
- Open an issue on GitHub
- Check existing documentation
- Review troubleshooting section
Made with ❤️ for better web translation experience