Skip to content

DrLegitamate/WordWeave

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

58 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

WordWeave 🌍

Learn languages naturally while browsing with intelligent, context-aware translations

WordWeave is a powerful Firefox extension that revolutionizes language learning by providing smart word and phrase translations on any website. Unlike traditional translators that replace entire content, WordWeave selectively translates individual words and meaningful phrases, preserving the natural reading experience while providing contextual learning opportunities.


🌟 Key Features

🧠 Smart Word Selection

  • Intelligent Filtering: Skips common words you already know
  • Context-Aware: Translates "can" correctly based on context ("tin can" vs "you can do this")
  • Meaningful Phrases: Includes short phrases (2-4 words) for better context
  • Adaptive Learning: Focuses on vocabulary that matters for your level

⚑ Precision Translation System

  • 6 Intensity Levels: From minimal (3%) to intensive (50%) word coverage
  • Word-Level Accuracy: Only translated words are highlighted, not entire blocks
  • Real-Time Processing: Dynamic translation as new content loads
  • Privacy-First: Uses LibreTranslate for secure, private translations

🎨 Seamless User Experience

  • Hover Tooltips: See original words by hovering over translations
  • Context Menu: Right-click any text for instant translation
  • Visual Customization: Adjust colors, fonts, and appearance
  • Clean Interface: Only translated content is visually distinct

🌐 Comprehensive Language Support

18 Languages Supported: Arabic, Chinese, Dutch, English, French, German, Hindi, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Russian, Spanish, Turkish, Ukrainian, Vietnamese


πŸš€ Quick Start

Installation

  1. From Firefox Add-ons (Coming Soon)
  2. Manual Installation:
    • Download from GitHub
    • Load in Firefox via about:debugging β†’ "Load Temporary Add-on"

Setup in 30 Seconds

  1. Enable WordWeave: Click the toolbar icon and toggle ON
  2. Choose Languages: Select your target language (e.g., Spanish)
  3. Set Intensity: Choose how many words to translate
  4. Start Learning: Visit any website and see individual word translations!

🎯 How WordWeave Works

The Smart Translation Difference 🧠

WordWeave solves the context problem that plagues traditional translators:

❌ Traditional Problem βœ… WordWeave Solution
"can" β†’ always "lata" (tin can) Context-aware: "I can do this" β†’ "puedo"
"bank" β†’ always "banco" (financial) Smart detection: "river bank" β†’ "orilla"
Entire sentences replaced Selective: Only specific words highlighted
Overwhelming text blocks Clean: Original text preserved with targeted learning

Intelligent Word Selection πŸ“

WordWeave carefully chooses what to translate:

  1. Filters out common words you likely already know
  2. Prioritizes meaningful vocabulary for learning
  3. Includes contextual phrases when needed for clarity
  4. Maintains reading flow with selective highlighting

Translation Intensity Levels πŸ“Š

Choose your learning pace:

Level Coverage Best For What You See
Minimal 3% Complete beginners Few key words translated
Light 8% Gentle introduction Light vocabulary exposure
Moderate 15% Balanced learning Comfortable word density
Medium 25% Standard learning Regular vocabulary building
Heavy 35% Intensive study High word exposure
Intensive 50% Advanced learners Maximum vocabulary challenge

πŸ› οΈ Advanced Features

Translation Services πŸ”„

  • Primary: LibreTranslate (privacy-focused, open-source)
  • Fallback: MyMemory (reliability backup)
  • Auto-Detection: Automatically identifies source language

Customization Options 🎨

  • Visual Styling: Custom highlight colors and fonts
  • Content Control: Choose what to translate (headers, navigation, body text)
  • Site Management: Exclude specific websites
  • Word Filtering: Smart common word detection

Privacy & Security πŸ”’

  • No Data Collection: Your browsing stays private
  • Local Storage: All settings stored on your device
  • Open Source: Full transparency and community-driven
  • Minimal Permissions: Only requests necessary access

πŸ“– Usage Guide

Basic Usage

  1. Browse Normally: Visit any foreign language website
  2. See Translations: Individual translated words appear highlighted
  3. Hover for Originals: Mouse over to see original words
  4. Right-Click Translate: Select any text for instant translation

What You'll See

  • Original text: "I need to depositar money at the banco"
  • Clean highlighting: Only translated words stand out
  • Preserved context: Sentence structure remains natural
  • Hover tooltips: See "deposit" and "bank" on hover

Advanced Settings

Access comprehensive settings via "Advanced Settings":

Translation Tab 🌐

  • Source/Target Languages: Configure language pairs
  • Translation Intensity: Adjust word coverage percentage
  • Content Types: Control what gets translated
  • Service Provider: Choose translation engine

Appearance Tab 🎨

  • Highlight Colors: Customize visual appearance
  • Font Sizes: Adjust text display
  • Preview: See changes in real-time

Sites Tab 🌍

  • Excluded Sites: Manage website blacklist
  • Current Site: Quick-add current domain

πŸ”§ Technical Details

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Background    │◄──►│  Content Script  │◄──►│   Popup/Options β”‚
β”‚     Script      β”‚    β”‚   (Translator)   β”‚    β”‚      UI         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
        β”‚                        β”‚                        β”‚
        β–Ό                        β–Ό                        β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Translation    β”‚    β”‚   Word-Level     β”‚    β”‚  User Settings  β”‚
β”‚   Services      β”‚    β”‚   Processing     β”‚    β”‚   Management    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Translation Pipeline

  1. Content Detection: Identify translatable text containers
  2. Word Extraction: Extract individual words and short phrases
  3. Smart Filtering: Remove common words using frequency lists
  4. Context Analysis: Maintain word relationships and meaning
  5. Selective Translation: Translate only chosen vocabulary
  6. Precise Application: Replace only specific words, not entire blocks
  7. Visual Enhancement: Apply styling only to translated words

Performance Optimizations

  • Intelligent Caching: Avoid redundant translations
  • Batch Processing: Efficient API usage
  • Debounced Updates: Smooth handling of dynamic content
  • Memory Management: Prevent memory leaks with WeakSet usage
  • Word-Level Precision: Minimal DOM manipulation

🌍 Supported Languages

Click to see all 18 supported languages
Language Code Native Name Script
Arabic ar Ψ§Ω„ΨΉΨ±Ψ¨ΩŠΨ© Right-to-left
Chinese zh δΈ­ζ–‡ Logographic
Dutch nl Nederlands Latin
English en English Latin
French fr FranΓ§ais Latin
German de Deutsch Latin
Hindi hi ΰ€Ήΰ€Ώΰ€¨ΰ₯ΰ€¦ΰ₯€ Devanagari
Indonesian id Bahasa Indonesia Latin
Italian it Italiano Latin
Japanese ja ζ—₯本θͺž Mixed scripts
Korean ko ν•œκ΅­μ–΄ Hangul
Polish pl Polski Latin
Portuguese pt PortuguΓͺs Latin
Russian ru Русский Cyrillic
Spanish es EspaΓ±ol Latin
Turkish tr TΓΌrkΓ§e Latin
Ukrainian uk Π£ΠΊΡ€Π°Ρ—Π½ΡΡŒΠΊΠ° Cyrillic
Vietnamese vi TiαΊΏng Việt Latin with diacritics

🀝 Contributing

We welcome contributions from the community! Here's how you can help:

Bug Reports πŸ›

  • Use GitHub Issues
  • Include Firefox version and extension version
  • Provide reproduction steps and screenshots

Feature Requests πŸ’‘

  • Check existing issues first
  • Describe the feature and its benefits
  • Consider implementation complexity

Code Contributions πŸ‘¨β€πŸ’»

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes with tests
  4. Submit a pull request with detailed description

Translation Improvements 🌐

  • Help improve language support
  • Test translations in your native language
  • Report context-specific translation issues

πŸ“Š Comparison

Feature WordWeave Traditional Translators
Translation Precision βœ… Word-level accuracy ❌ Block-level replacement
Context Awareness βœ… Smart word selection ❌ Word-by-word only
Learning Focus βœ… Selective vocabulary ❌ Complete replacement
Reading Experience βœ… Preserved flow ❌ Disrupted layout
Privacy βœ… No data collection ❌ Often tracks users
Customization βœ… Highly configurable ❌ Limited options
Performance βœ… Optimized for browsing ❌ Often slow/intrusive
Open Source βœ… Fully transparent ❌ Proprietary

πŸ”’ Privacy Policy

Your privacy is our priority:

  • Zero Data Collection: We don't collect, store, or transmit personal information
  • Local Storage Only: All settings remain on your device
  • Translation Privacy: Text sent only for processing, not stored
  • No Tracking: No analytics, cookies, or user behavior monitoring
  • Open Source: Complete transparency through public code

πŸ“ž Support & Community

Get Help

  • Documentation: Check our Wiki
  • Issues: Report bugs on GitHub
  • Discussions: Join community conversations

Stay Updated

  • GitHub: Star and watch the repository
  • Releases: Get notified of new versions
  • Changelog: Track feature updates and improvements

πŸ™ Acknowledgments

  • LibreTranslate: Privacy-focused translation services
  • Firefox WebExtensions: Robust extension platform
  • Open Source Community: Invaluable feedback and contributions
  • Language Learners: Inspiration and real-world testing

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸš€ Get Started Today!

Transform your browsing into a language learning adventure!

  1. Download WordWeave πŸ“₯
  2. Choose your target language 🌐
  3. Start learning naturally 🧠
  4. Browse the web with confidence ✨

WordWeave - Translate precisely, browse naturally, learn effectively πŸŒπŸ”—

⭐ Star on GitHub | πŸ› Report Issues | πŸ’‘ Request Features

About

A firefox extention to enable users to expand vocabulary in the language they are learning through the replacement of words during web browsing

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors