Logo

With Babel Fish AI, I have already introduced a Chrome extension capable of turning voice into text via OpenAI’s Whisper API, while also offering real-time translation. Today, I’m back with a host of new features and many improvements: from the context menu to the auto-copy of the transcribed text, along with automatic rephrasing (now activated via a button in the banner); this post reviews the changes since the very first version.

1. Overview: What’s Changing?

Babel Fish AI continues its mission: to enable you to transcribe, translate and rephrase your texts in a browser, with ease. Here are some of the major updates since the last article:

  • Powerful context menu:
    Right-click on a selected text to rephrase (rephrase) or translate it to the language of your choice. The original text is directly replaced by the new version.

  • Immediate control from the banner:
    No need to go into the options to enable/disable rephrasing or translation! The buttons in the banner (at the top of the screen during transcription) allow you to adjust your preferences in real time, according to what you want to do with your transcription or text.

  • Smart auto-copy function:
    Activate the Automatic copy to clipboard option to automatically copy the text when the dialog box is displayed and when no input field is in focus.

  • Interface improvements:

    • Better integrated copy button.
    • Possibility to keep the dialog box open or to set a delay before it automatically closes.
    • More modern animations and style (rounded corners, shadows, etc.).
  • Various optimizations:

    • Connection check (navigator.onLine) before each call to avoid offline errors.
    • Better error handling and more explicit messages (missing API key, inactive network, etc.).
    • More modular code (dedicated files for languages, the banner, the UI, etc.).

2. The Videos: 15 Languages, 15 Demonstrations

Here is the list of videos, each video presenting voice transcription, real-time translation and rephrasing.

  1. French (FR): https://youtu.be/7iLJ_MPQ33k
  2. English (EN): https://youtu.be/ie7vR_9IJCw
  3. Japanese (JA): https://youtu.be/bjoGWvSyQPo
  4. Korean (KO): https://youtu.be/e4E5K4il6t8
  5. Chinese (ZH): https://youtu.be/mdxffjYetJs
  6. Spanish (ES): https://youtu.be/pXvQBsjKHLk
  7. German (DE): https://youtu.be/FdjPCvDEYXc
  8. Polish (PL): https://youtu.be/ckkgQ1wtYok
  9. Italian (IT): https://youtu.be/1XTbqCksu2s
  10. Portuguese (PT): https://youtu.be/s6BcKsTdUdg
  11. Dutch (NL): https://youtu.be/8jMHRjzNM2k
  12. Hindi (HI): https://youtu.be/VFuh-qrAFKU
  13. Arabic (AR): https://youtu.be/pMbzVmCudDQ
  14. Romanian (RO): https://youtu.be/FmQgv3Ezu0s
  15. Swedish (SV): https://youtu.be/1hHPh6cYOkY

Discover how Babel Fish AI makes communication easier in your favorite language!

3. Recap of the Latest Versions

Here is a brief summary of the key changes since version 1.1.0:

3.1. Context Menu (v1.1.12)

  • Right-click on a selected text:
    • Rephrase Selection to rephrase instantly.
    • Translate Selection to translate the selected text into any supported language.
  • Improved dialog box:
    • Visual timer, “Keep Open” button, modernized style, integrated copy button.

3.2. Auto-copy and Focus Management (v1.1.14 → v1.1.15)

  • “Automatic copy to clipboard” option:
    • Copies the text only if the dialog box is displayed and no field is in focus.
  • Enhanced detection:
    • Prevents overloading the clipboard when the text is already inserted into a field.
  • Preservation of focus and cursor:
    • You no longer lose your position in the text during interactions with the banner or buttons.

3.3. UI and UX Improvements (v1.1.13)

  • Controls moved to the top of the dialog box for better accessibility.
  • More compact interface (reduced spacing, adjusted margins).
  • Better management of the timer (visual counter, “Keep Open” option).

3.4. Various Optimizations and Fixes

  • Code refactoring: more modular (separate files for languages, the banner, API calls, etc.).
  • More reliable connections: offline status check to avoid unnecessary API calls.
  • Clearer error messages: detailed instructions to solve issues (invalid API key, etc.).
  • Security improvements: window.clearTimeout, safer injection, etc.

4. Implementation of Code Analyzers

In parallel with AI-assisted development via Roo Code (I mainly use Google’s gemini-2.0-pro-exp-02-05, gemini-2.0-flash-thinking-exp-01-21 models which are currently free, and Anthropic’s Claude Sonnet 3.7), I have integrated several static analysis tools to ensure the quality and safety of the generated code:

  • SonarCloud
  • CodeFactor
  • Codacy
  • DeepSource

During each pull request on GitHub, these services analyze the code and immediately flag vulnerabilities, technical debts, or bad practices. The feedback appears directly in the GitHub interface, allowing for quick fixes before any merge into the main branch. This way, even if the AIs produce large blocks of code, these analyzers act as safeguards to maintain a clean and secure code.

5. Updated Technical Architecture

Since my previous post, the structure of the extension has slightly evolved. The key points:

  • manifest.json (MV3): handles permissions (activeTab, scripting, contextMenus…) and dynamic injection.
  • background.js: Service worker responsible for responding to icon clicks, shortcuts, and injecting content.js.
  • content.js: central role for audio (MediaRecorder) and API calls (Whisper, GPT) via specialized modules.
  • Context menu: created by background.js, applied by content.js.
  • i18n.js and languages-shared.js: centralization of translation data.

6. Want to Try It Out?

7. Conclusion

With these updates, Babel Fish AI becomes even more versatile, user-friendly and intelligent. Thanks to the context menu, the rephrase/translate buttons accessible directly in the banner, the auto-copy system and enhanced code analysis, the user experience is significantly improved.

Feel free to watch the demonstration videos. Thank you for following along, and best of luck with your transcription and translation projects!

This document was translated from the fr version to the en language using the o3-mini model. For more information on the translation process, see https://gitlab.com/jls42/ai-powered-markdown-translator