2025-08-19 10:11:40 +08:00
# KISS Translator
2025-10-12 15:40:37 +08:00
**New Version Preview:**
After a period of intermittent development, the planned features for the new version are essentially complete. The main new features are as follows:
* **Core Translation Logic Refactoring:**
* Supports both automatic text detection and manual selection modes.
* The automatic text detection mode enables complete translation for the vast majority of websites without the need to write specific rules.
* The previous manual rule mode has been retained for meticulous optimization on specific websites.
* Supports rich text translation, preserving links and other text styles from the original content as much as possible.
2025-10-13 00:54:02 +08:00
* Optimize the display effect of showing only translated text (hiding original text).
2025-10-12 15:40:37 +08:00
* **API Refactoring:**
* Supports adding and deleting an arbitrary number of APIs.
* Supports aggregating text for sending, reducing the number of calls to the translation API and improving performance.
* Supports the built-in Chrome AI translation API, enabling AI-powered translation without an internet connection.
* Supports AI contextual conversation memory to enhance translation quality.
* All APIs support advanced features such as hooks and custom parameters.
2025-10-13 00:54:02 +08:00
* Added support for Azure AI translation interface.
2025-10-12 15:40:37 +08:00
* **Optimized YouTube Subtitle Support:**
* Supports translating video subtitles with any translation service and displaying them bilingually.
* Includes a built-in basic algorithm for subtitle merging and sentence splitting to improve translation results.
* Supports an AI-powered sentence splitting function to further enhance translation quality.
* **English Dictionary Redundancy:**
* Added Bing and Youdao dictionaries.
* Fixed the vocabulary collection feature.
* **User Experience Optimization:**
* The pop-up translation box for selected text now supports simultaneous translation by multiple services.
* The translation control panel has been updated with many new quick-toggle functions.
* Added a Playground page for convenient API debugging.
**Note:** Due to extensive refactoring, the configuration file for the new version is not backward compatible with the old version. Therefore, please back up your data manually before upgrading. Furthermore, **do not import old configuration files after upgrading to the new version. **
2025-08-19 10:11:40 +08:00
English | [简体中文 ](README.md )
A simple, open source [bilingual translation extension & Greasemonkey script ](https://github.com/fishjar/kiss-translator ).
[kiss-translator.webm ](https://github.com/fishjar/kiss-translator/assets/1157624/f7ba8a5c-e4a8-4d5a-823a-5c5c67a0a47f )
## Features
- [x] Keep it simple, smart
- [x] Open source
- [x] Adapt to common browsers
- [x] Chrome/Edge
- [x] Firefox
- [x] Kiwi (Android)
- [x] Orion (iOS)
2025-09-16 08:47:36 +08:00
- [x] Safari
2025-08-19 10:11:40 +08:00
- [x] Thunderbird
- [x] Supports multiple translation services
- [x] Google/Microsoft
2025-10-13 00:54:02 +08:00
- [x] Tencent/Volcengine
- [x] OpenAI/Gemini/Claude/Ollama/DeepSeek/OpenRouter
2025-08-19 10:11:40 +08:00
- [x] DeepL/DeepLX/NiuTrans
2025-10-13 00:54:02 +08:00
- [x] BuiltinAI/AzureAI/CloudflareAI
2025-08-19 10:11:40 +08:00
- [x] Custom translation interface
- [x] Covers common translation scenarios
- [x] Web bilingual translation
- [x] Input box translation
- [x] Seletction translation
2025-10-13 00:54:02 +08:00
- [x] Open the translation box on any page
2025-08-19 10:11:40 +08:00
- [x] Favorite Words
- [x] Mouseover translation
- [x] YouTube subtitle translation
2025-10-13 00:54:02 +08:00
- [x] Support for various translation effects
- [x] Customizable text recognition and full-text translation
- [x] Customizable translation styles
- [x] Support for rich text translation and display
- [x] Support for displaying only the translated text (hiding the original text)
- [x] Advanced translation API features
- [x] Aggregate and send translated texts in batches
- [x] AI contextual conversation memory
- [x] Customizable AI terminology dictionary
- [x] AI-powered subtitle segmentation and translation
- [x] Customizable hooks and parameters
2025-08-19 10:11:40 +08:00
- [x] Cross-client data synchronization
- [x] KISS-Worker( cloudflare/docker)
- [x] WebDAV
- [x] Custom translation rules
- [x] Rule subscription/rule sharing
- [x] Customized terminology
- [x] Custom shortcut keys
- `Alt+Q` Toggle Translation
- `Alt+C` Toggle Styles
- `Alt+K` Open Setting Popup
- `Alt+S` Open Translate Popup / Translate Selected Text
- `Alt+O` Open Options Page
- `Alt+I` Input Box Translation
## Install
> Note: For the following reasons, it is recommended to use browser extensions first
>
2025-10-15 22:10:17 +08:00
> - Browser extensions have more complete functions (local language recognition, context menu, etc.)
2025-08-19 10:11:40 +08:00
> - Grease Monkey script will encounter more usage problems (cross domain issues, script conflicts, etc.)
- [x] Browser extension
- [x] Chrome [Installation address ](https://chrome.google.com/webstore/detail/kiss-translator/bdiifdefkgmcblbcghdlonllpjhhjgof?hl=zh-CN )
- [x] Kiwi (Android)
- [x] Orion (iOS)
- [x] Edge [Installation address ](https://microsoftedge.microsoft.com/addons/detail/%E7%AE%80%E7%BA%A6%E7%BF%BB%E8%AF%91/jemckldkclkinpjighnoilpbldbdmmlh?hl=zh-CN )
- [x] Firefox [Installation address ](https://addons.mozilla.org/zh-CN/firefox/addon/kiss-translator/ )
2025-10-13 00:54:02 +08:00
- [ ] Safari
- [ ] Safari (Mac)
- [ ] Safari (iOS)
2025-08-19 10:11:40 +08:00
- [x] Thunderbird [Download address ](https://github.com/fishjar/kiss-translator/releases )
- [x] GreaseMonkey Script
- [x] Chrome/Edge/Firefox ([Tampermonkey ](https://www.tampermonkey.net/ )/[Violentmonkey ](https://violentmonkey.github.io/ )) [Installation link ](https://fishjar.github.io/kiss-translator/kiss-translator.user.js )
- [Greasy Fork ](https://greasyfork.org/zh-CN/scripts/472840-kiss-translator )
- [x] iOS Safari ([Userscripts Safari ](https://github.com/quoid/userscripts )) [Installation link ](https://fishjar.github.io/kiss-translator/kiss-translator-ios-safari.user.js )
## Associated Projects
- Data synchronization service: [https://github.com/fishjar/kiss-worker ](https://github.com/fishjar/kiss-worker )
- Data synchronization service available for this project.
- Can also be used to share personal private rule lists.
- Deploy by yourself, manage by yourself, data is private.
- Community subscription rules: [https://github.com/fishjar/kiss-rules ](https://github.com/fishjar/kiss-rules )
- Provides the latest and most complete list of subscription rules maintained by the community.
- Help with rules-related issues.
## Frequently Asked Questions
### How to Set Keyboard Shortcuts
Set this in the extension management page, for example:
- chrome [chrome://extensions/shortcuts ](chrome://extensions/shortcuts )
- firefox [about:addons ](about:addons )
### What is the priority order of rule settings?
2025-10-13 00:54:02 +08:00
Personal Rules > Subscription Rules > Global Rules
2025-08-19 10:11:40 +08:00
Among these, Global Rules have the lowest priority but are very important as they serve as the default rules.
2025-10-31 11:25:43 +08:00
### API (Ollama, etc.) Test Failure
Common reasons for API test failures include:
- Incorrect address:
- For example, `Ollama` has a native API address and an `Openai` -compatible address. This plugin currently supports the `Openai` -compatible address and does not support the `Ollama` native API address.
- The default `Prompt` needs to support `JSON` output, but some AI models do not:
- This can be addressed by using `Hook` or a custom API.
- For details, refer to: [Custom API Example Documentation ](https://github.com/fishjar/kiss-translator/blob/master/custom-api_v2.md )
- Inconsistent parameters for some AI models
- For example, the parameters of the `Gemini` native API are highly inconsistent. Some model versions do not support certain parameters, leading to errors.
- In this case, you can modify the request body using a `Hook` , or replace it with `Gemini2` (an OpenAI-compatible address).
- The server restricts cross-origin access, returning a 403 error:
- For example, `Ollama` requires adding the environment variable `OLLAMA_ORIGINS=*` when starting. See: https://github.com/fishjar/kiss-translator/issues/174
2025-08-19 10:11:40 +08:00
### Custom API doesn't work in Tampermonkey scripts
Tampermonkey scripts require adding domains to the whitelist; otherwise, requests cannot be sent.
2025-10-16 23:51:49 +08:00
### How to set up a hook function for a custom API
Custom APIs are very powerful and flexible, and can theoretically connect to any translation API.
Example reference: [custom-api_v2.md ](https://github.com/fishjar/kiss-translator/blob/master/custom-api_v2.md )
2025-10-25 18:38:55 +08:00
### How to directly access the Tampermonkey script settings page
Settings page address: https://fishjar.github.io/kiss-translator/options.html
2025-08-19 10:11:40 +08:00
## Future Plans
This is a side project with no strict timeline. Community contributions are welcome. The following are preliminary feature directions:
2025-10-13 00:54:02 +08:00
- [x] **Batch Text Requests ** : Optimize request strategy to reduce translation API calls and improve performance.
- [x] **Enhanced Rich Text Translation ** : Support accurate translation of complex page structures and rich text content.
- [x] **Advanced Custom/AI Interfaces ** : Add support for context memory, multi-turn conversations, and other advanced AI features.
- [x] **Fallback English Dictionary ** : When translation services fail, fall back to a local dictionary lookup.
- [x] **Improved YouTube Subtitle Support ** : Enhance merging and translation experience for streaming subtitles, reducing sentence fragmentation.
2025-08-19 10:11:40 +08:00
- [ ] **Upgraded Rule Collaboration System ** : Introduce more flexible rule sharing, version management, and community review processes.
If you're interested in any of these directions, feel free to discuss in [Issues ](https://github.com/fishjar/kiss-translator/issues ) or submit a PR!
## Development Guidelines
```sh
git clone https://github.com/fishjar/kiss-translator.git
cd kiss-translator
git checkout dev # Submit a PR suggestion to push to the dev branch
pnpm install
pnpm build
```
## Discussion
- Join [Telegram Group ](https://t.me/+RRCu_4oNwrM2NmFl )
## Appreciate
