A lightweight translation extension for Microsoft PowerToys Command Palette via DeepL API.
PowerTranslate brings fast, accurate translation directly into your PowerToys Command Palette workflow. Open the Command Palette, search for "Translate", and instantly translate text between 30+ language pairs using DeepL's industry-leading neural translation engine.
- OS: Windows 10 Build 19041 or later, or Windows 11
- PowerToys: Latest version with Command Palette support from Microsoft PowerToys on GitHub
- Command Palette: Enabled inside PowerToys; see the Command Palette section in the PowerToys GitHub repo
- .NET: .NET 9.0 (included in packaged app)
- DeepL API Key: Free or paid account at deepl.com
- Architecture: x64 (AMD64) Desktop only
winget install -e --id lamteteeow.PowerTranslateDownload and install the certified PowerTranslateExtension_<version>_x64.msix from the latest GitHub release.
- Open PowerToys Command Palette
- Type
Translateto access translation commands - Configure your DeepL API key (one-time setup)
- Select or leave source language as AUTO for automatic detection
- Choose target language
- Enter text to translate
- View results with automatic copy-to-clipboard support
- Change languages on-the-fly without re-entering text
After installation, use the Configure DeepL API key command in the palette to:
- Enter your DeepL API key (get one at deepl.com)
- Validate connectivity to the DeepL API
- Save encrypted key for future use
Note: After setting the API key, reload Command Palette extensions to refresh language choices. Use
Ctrl+Shift+P(by default) and searchReload Command Palette extensions.
Languages not loading?
- Verify your DeepL API key is valid: use
Configure DeepL API keycommand - Check your internet connection
- Ensure you've reloaded Command Palette extensions after saving API key
Translation not working?
- Check API key validity (free accounts have usage limits)
- Verify internet connectivity
- Try a different language pair to isolate the issue
Settings not persisting?
- Settings are cached in:
C:\Users\[User]\AppData\Local\PowerTranslateExtension\ - Verify folder exists and is accessible
- Clear cache files if corrupted:
deepl.key,source-language.txt,target-language.txt,runtime-logging.enabled
API key not saving?
- Ensure API key is not empty
- Verify Windows can encrypt data (Windows Data Protection API must be available)
- Run
Configure DeepL API keycommand and try again
Install blocked with same-version content mismatch (0x80073CFB)?
- This happens when a package with the same identity/version was built from different contents (for example Debug vs Release).
- Remove existing package, then install the signed Release package again:
Get-AppxPackage -Name "lamteteeow.PowerTranslate" | Remove-AppxPackage
Add-AppxPackage -Path ".\\<downloaded-package>.msix"See PRIVACY.md for the formal policy used for release and store submission.
- Translation requests: Sent to DeepL API servers over HTTPS
- API key: Stored locally and encrypted using Windows Data Protection API
- Language preferences: Stored locally in plain text (no sensitive data)
- No telemetry: No usage data, tracking, or analytics collected
- Encrypted API key (not accessible outside secure storage)
- Selected source language
- Selected target language
- Only communicates with DeepL API for translation requests
- No communication with Microsoft or PowerToys telemetry systems beyond Command Palette discovery
- No personal data collected or stored
- No third-party tracking
- Users have full control over API key and language settings
Contributions are welcome! Whether it's bug fixes, feature requests, documentation improvements, or translations, we'd love your help.
Disclaimer: The author is inexperienced with common open-source standards and conventions. We greatly appreciate feedback, code reviews, and guidance from experienced contributors.
Please see CONTRIBUTING.md for guidelines.
MIT License - See LICENSE file for details.
This software is provided "AS IS" without warranty of any kind. The author assumes no liability for any damages, data loss, or issues arising from use of this extension.



