PRIVACY POLICY & PERMISSION DISCLOSURE
DualWave Translate - Bilingual Web & PDF Translator
Last Updated: October 25, 2026
DualWave Translate ("we", "our", or "the extension") values your privacy. We are committed to transparency regarding how data is handled and why permissions are requested. This Privacy Policy details our data practices and explains why each permission requested by the extension is necessary to deliver its core functionality.
────────────────────────────────────────────────────────────
1. ARE ALL REQUESTED PERMISSIONS STRICTLY NECESSARY?
────────────────────────────────────────────────────────────
Yes. In strict accordance with the Google Chrome Web Store Developer Program Policies and the Principle of Least Privilege, DualWave Translate requests only the minimal set of permissions essential to perform in-page bilingual translation:
• "storage"
Why it is needed:
To save your chosen target language, selected translation engine (e.g., Free Engine, DeepL, OpenAI, Gemini), bilingual visual display styles (dashed lines, blockquotes, highlights), and domain auto-translate rules locally on your browser.
Is it necessary? Yes. Without local storage, your preferences would be lost every time you close your browser or navigate to a new page. All settings are stored locally on your device in chrome.storage.local and are never transmitted to external servers.
• "activeTab"
Why it is needed:
To access the text content of your current tab and insert bilingual translated blocks directly underneath original paragraphs when you trigger translation via the popup, toolbar button, floating widget, or keyboard shortcut (Alt+W).
Is it necessary? Yes. Without this permission, the extension cannot inspect page text or render bilingual side-by-side elements on the active webpage you want to translate.
• "contextMenus"
Why it is needed:
To provide convenient right-click menu actions, such as "Translate Page Bilingually", "Translate Selection", and "Open Bilingual PDF Reader".
Is it necessary? Yes. It provides quick access to translation functions directly from the native browser context menu without having to open the popup every time.
• "<all_urls>" (host_permissions)
Why it is needed:
1. Webpage Translation: Users encounter foreign text across any domain on the internet (news sites, scientific journals, documentation repositories, forums, social platforms). The extension must be able to inject the bilingual layout into whichever foreign site the user chooses to translate.
2. Background API Connectivity: The extension's background service worker requires network access to communicate securely via HTTPS with the chosen translation service (such as the Google Translate endpoint, MyMemory API, or your custom DeepL/OpenAI/Gemini API endpoints) without cross-origin resource sharing (CORS) blocking.
Is it necessary? Yes. A web translator cannot know in advance which foreign websites a user will visit. Restricting hosts would break translation on non-whitelisted sites. Importantly, the extension only parses text when triggered by the user or when you have explicitly added a domain to your auto-translate list.
────────────────────────────────────────────────────────────
2. INFORMATION WE COLLECT AND HOW IT IS USED
────────────────────────────────────────────────────────────
• Zero Personal Data Collection:
We do NOT collect, harvest, store, or sell any personally identifiable information (PII). We do not collect names, email addresses, IP addresses, browsing history, search logs, cookies, or device fingerprints.
• No User Tracking or Telemetry:
We do not operate tracking pixels, analytical beacons, or background telemetry scripts. Your browsing activity remains entirely private between you and the websites you visit.
• Translation Text Handling:
When you request a page, document, or highlighted phrase to be translated, that specific snippet of text is transmitted securely over an encrypted HTTPS connection directly to the translation provider (such as the free Google Translate API, MyMemory, or your configured DeepL, OpenAI, or Gemini endpoint).
- Text is sent strictly to generate the translation and is processed in real time.
- The extension does NOT store your translated text on any intermediary or developer-owned server.
- Temporary translation caching occurs strictly within your browser's local session memory to prevent redundant API queries.
• API Keys Security:
If you choose to provide your own third-party API keys (e.g., DeepL, OpenAI ChatGPT, or Google Gemini), those keys are stored exclusively in your local browser storage (chrome.storage.local). They are never transmitted to us or any third party other than the designated API service provider when making translation calls.
────────────────────────────────────────────────────────────
3. THIRD-PARTY SERVICES
────────────────────────────────────────────────────────────
When translating content, text is processed through the translation service you select:
- Google Translate (Default free endpoint)
- MyMemory Translation Memory
- DeepL API (if user provides DeepL key)
- OpenAI API (if user provides OpenAI key)
- Google Gemini API (if user provides Gemini key)
Each third-party service operates under its respective privacy terms and security protocols. All requests are made via standard HTTPS encryption.
────────────────────────────────────────────────────────────
4. DATA SECURITY & RETENTION
────────────────────────────────────────────────────────────
Because all settings and cached strings reside in your local browser storage, you maintain total control over your data. You can clear all extension data, custom rules, and API keys at any time by:
1. Clicking "Reset to Defaults" in the DualWave Options page; or
2. Removing the extension from your browser via chrome://extensions.
────────────────────────────────────────────────────────────
5. COMPLIANCE & CONTACT
────────────────────────────────────────────────────────────
DualWave Translate complies fully with the Google Chrome Web Store Developer Program Policies, the Single Purpose Policy, and relevant data protection regulations including the EU General Data Protection Regulation (GDPR).
If you have questions regarding this Privacy Policy or permission usage, please contact our support team through the official support channels on the Chrome Web Store extension listing.