DXShelley60 downloadsTranslate, look up, hear, and retain words without leaving your Obsidian note.
AI Translate is a multi-platform toolkit for dictionary lookup and selected-text translation. It provides extensions for Chrome, Edge, Firefox, VS Code, and Obsidian, with shared vocabulary request behavior across all supported platforms.
Simplified Chinese | Documentation index | Architecture | VS Code documentation | Obsidian documentation | Releases
| Platform | Primary workflow | Package |
|---|---|---|
| Chrome | Translate selected words, sentences, and paragraphs on web pages. | dist/<version>/AI-Translate-chrome.zip |
| Edge | Uses the Chrome feature set with Edge-compatible packaging and TTS fallback. | dist/<version>/AI-Translate-edge.zip |
| Firefox | Uses the same translation workflow through a Manifest V2-compatible package. | dist/<version>/AI-Translate-firefox.zip |
| VS Code | Shows dictionary and translation results while reading English Skill documents. | dist/<version>/ai-translate-hover-<version>.vsix |
| Obsidian | Looks up English words, translates selected note text, and optionally saves vocabulary. | dist/<version>/main.js, manifest.json, styles.css, and the matching ZIP |
All plugins use the same release version. A release is valid only when Chrome, Edge, Firefox, VS Code, and Obsidian match exactly.
1.12.2 and later through one settings implementation shared by all supported app versions.See AI Translate - Obsidian Plugin for the complete Obsidian installation, settings, privacy, and request-template reference.
Store installation should use the platform listing when one is available. Do not upload an extracted development package to an untrusted service.
.vsix file from the matching release.After Community plugins approval, open Settings > Community plugins, search for AI Translate, and install it.
For manual installation, download main.js, manifest.json, and styles.css from the release whose tag exactly matches the manifest version. Copy the files to:
<vault>/.obsidian/plugins/ai-translate/
Release tags do not use a v prefix. For example, version 7.0.9 must use release tag 7.0.9, not v7.0.9.
Browser and VS Code model profiles support OpenAI-compatible base URLs, endpoint paths, model IDs, authentication, timeouts, priorities, prompts, and optional extra request fields.
The Obsidian plugin uses built-in Youdao services by default. Its fallback translation settings contain an API base URL, endpoint path, model, and target language.
Vocabulary integration is disabled by default. When enabled, successful English word lookups can be saved automatically or manually.
Supported request options include:
POST with a JSON body or GET with encoded query parameters.headword, US/UK phonetics, and Chinese/English definitions.Idempotency-Key for each actual write unless the user supplies one.The shared protocol implementation is in src/vocabulary.js. Platform-specific code owns only transport, logging, and UI feedback.
Review the privacy behavior of every endpoint you configure. Local endpoints remain local only when the configured service itself does not forward requests.
18.17.0 or later. CI and release workflows currently use Node.js 22.npm ci
npm --prefix obsidian-plugin ci
npm --prefix vscode-extension ci
Build all browser packages and run the browser/shared tests:
npm test
Build, type-check, and test the Obsidian plugin:
npm --prefix obsidian-plugin run check
Check and package the VS Code extension:
npm --prefix vscode-extension run check
npm --prefix vscode-extension run package
The browser build writes browser-specific directories under browser-extensions/ and writes the three distributable ZIP files to dist/. ZIP creation runs in Node.js and keeps manifest.json as the first archive entry.
A full release requires matching versions for every plugin and an exact, unprefixed release tag.
npm run release:all -- --tag <version>
This command builds Chrome, Edge, Firefox, VS Code, and Obsidian. All release assets are written directly to dist/<version>/. GitHub Release tags always use the exact version without a v prefix.
The complete release command verifies all plugin versions, runs every plugin check, and writes these Obsidian assets alongside the browser and VS Code packages:
dist/<version>/main.js
dist/<version>/manifest.json
dist/<version>/styles.css
dist/<version>/ai-translate-obsidian-<version>.zip
Pushing a numeric tag such as 7.0.9 triggers .github/workflows/release-all.yml, which rebuilds every plugin with the actual tag, creates artifact attestations, and publishes the complete GitHub Release. See the Obsidian release and review guide for Obsidian-specific requirements, known scanner findings, fixes, and post-release verification.
| Path | Purpose |
|---|---|
src/ |
Shared browser extension source. |
browser-extensions/ |
Browser-specific manifests, static icons, and generated Chrome, Edge, and Firefox package directories. |
src/vocabulary.js |
Cross-platform vocabulary request implementation. |
vscode-extension/ |
VS Code extension source, tests, and package configuration. |
obsidian-plugin/ |
Obsidian source, bundle, styles, tests, and dedicated documentation. |
scripts/ |
Browser and release build scripts. |
test/ |
Browser, VS Code, Obsidian, shared regression tests, and browser compatibility fixtures. |
website/ |
Project website source. |
docs/ |
Architecture, development, release, and store documentation. |
Before submitting a change, run the checks for every affected platform and include focused regression coverage. Start with the documentation index; architecture and behavior constraints are documented in Development Guidelines.
This project is licensed under the terms in LICENSE.