LinguaFlash is a smart Chrome extension designed to help you learn new languages seamlessly while browsing the web. By utilizing Spaced Repetition and interval-based notifications, it introduces new vocabulary and sentences with automated pronunciation, ensuring consistent learning without disrupting your workflow.
- Refined User Interface: A modern, clean card-based design with an intuitive layout for easier settings management.
- Robust Audio Engine: Improved TTS reliability with smart queueing to prevent silence/crashes, plus a natural pause between sentences.
- Multi-Language Support: Learn English, French, German, Italian, Spanish, Russian, Chinese, Arabic, Korean, and Persian (Native).
- Massive Vocabulary Database (1,600+ Items):
- A1 (Beginner): 201 items (Basic words, Family, Colors).
- A2 (Elementary): 243 items (Simple sentences, Daily routine).
- B1 (Intermediate): 200 items (Work, Travel, Health).
- B2 (Upper Intermediate): 203 items (Complex topics, Abstract concepts).
- C1/C2 (Advanced/Mastery): 550 items (Professional & Literary).
- Grammar Tips: 200 items with Native-Logic Explanation (e.g., teaching "Ezafe" for Persian instead of English 's).
- Interval Notifications: Set a timer (e.g., every 5 minutes) to receive a flashcard with audio.
- Auto-Pronunciation (TTS): Listens to the target language followed by your native language for reinforcement.
- Smart Pause: Quickly pause sessions during meetings or focus time without disabling the extension.
- Favorites Manager:
- Right-click any text on the web to "Add to LinguaFlash".
- Edit, Translate, Import, and Export (CSV) your collection.
- Customizable Settings: Independent toggles for Enable Audio and Show Notification, plus adjustable frequency.
- Fully Localized UI: Interface adapts completely to your preferred language (supporting all 10 languages including Persian, Arabic, & Chinese).
Download LinguaFlash from the Chrome Web Store for the best experience and automatic updates.
- Clone or download this repository.
- Open Google Chrome and navigate to
chrome://extensions. - Enable "Developer mode" (top right toggle).
- Click "Load unpacked".
- Select the LinguaFlash directory.
Note on Timing: Chrome enforces a minimum alarm interval of 1 minute. To save battery, the browser may occasionally delay notifications if your computer is idle or under heavy load. This is standard browser behavior.
- Setup: Click the extension icon. Choose your Source Language (Native) and Target Language (Learning).
- Select Material: Pick a CEFR level (e.g., B1 Sentences) or "My Favorites".
- Set Timer: Choose how often you want to see a card.
- Manage Favorites: Use the 📂 button to view, edit, import, or export your custom list.
LinguaFlash now uses IndexedDB for high performance. The "Source of Truth" is the provided SQLite database.
- Edit the SQLite DB: Open
linguaflash.dbusing any SQLite editor (like DB Browser for SQLite) and modify thevocabularytable. - Export to JSON: Run the export script to sync the changes for the extension:
python3 export_json.py
- Bootstrap in Extension:
- The extension automatically loads
vocabulary_db.jsoninto IndexedDB on the first install. - To force an update in your browser, go to
chrome://extensions, click Update, or toggle Developer Mode off and on.
- The extension automatically loads
- Advanced Database Architecture: Migrated from a bulky 1.3MB JS file to a high-performance IndexedDB system.
- Data Integrity Guards: Automated auditing to ensure 100% translation coverage and zero duplicate items.
- Native Grammar Logic: Replaced English-centric grammar rules with native explanations for all target languages.
- Chrome Web Store Publishing: Live on Store 🚀
- Prepare promotional images.
- Verify production build.
- Leitner System Implementation: Advanced spaced repetition logic to track learning progress for each word.
- Automated progression through "boxes" based on correct/incorrect recall.
- Optimized review intervals for long-term retention.
- Cloud Sync: Optional Google Drive sync for progress across devices.
Contributions are welcome! Please check the issues page or submit a Pull Request.









