{"id":32122647,"url":"https://github.com/baimohui/i18n-mage","last_synced_at":"2026-03-09T02:12:23.278Z","repository":{"id":312018081,"uuid":"840993639","full_name":"baimohui/i18n-mage","owner":"baimohui","description":"🪄 Wave your i18n wand. Conjure order from the chaos with auto-translation, smart fixes, and Excel sync.","archived":false,"fork":false,"pushed_at":"2026-01-31T07:15:03.000Z","size":5503,"stargazers_count":17,"open_issues_count":2,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-31T20:22:23.258Z","etag":null,"topics":["automation","frontend","i18n","i18next","internationalization","l10n","localization","productivity","react","react-i18next","translation","translation-management","typescript","vscode-extension","vue","vue-i18n"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/baimohui.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-08-11T10:23:18.000Z","updated_at":"2026-01-31T07:15:07.000Z","dependencies_parsed_at":"2025-09-21T15:16:12.998Z","dependency_job_id":"b0f2fd5d-501d-47a7-86f4-259bf6555a67","html_url":"https://github.com/baimohui/i18n-mage","commit_stats":null,"previous_names":["baimohui/i18n-mage"],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/baimohui/i18n-mage","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baimohui%2Fi18n-mage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baimohui%2Fi18n-mage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baimohui%2Fi18n-mage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baimohui%2Fi18n-mage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/baimohui","download_url":"https://codeload.github.com/baimohui/i18n-mage/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/baimohui%2Fi18n-mage/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29001653,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-02T01:32:03.847Z","status":"online","status_checked_at":"2026-02-02T02:00:07.448Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","frontend","i18n","i18next","internationalization","l10n","localization","productivity","react","react-i18next","translation","translation-management","typescript","vscode-extension","vue","vue-i18n"],"created_at":"2025-10-20T20:58:30.997Z","updated_at":"2026-03-09T02:12:23.271Z","avatar_url":"https://github.com/baimohui.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1\u003ei18n Mage\u003c/h1\u003e\n\n\u003cp\u003e\n  \u003ca href=\"https://baimohui.github.io/i18n-mage-docs/en/guide/introduction.html\"\u003eEnglish\u003c/a\u003e | \u003ca href=\"https://baimohui.github.io/i18n-mage-docs/zh/guide/introduction.html\"\u003e简体中文\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp\u003e\n  Streamline your frontend i18n workflow with Vue I18n \u0026 React i18next support, auto-completion, inline hints, and Excel import/export.\n\u003c/p\u003e\n\n\u003cp\u003e\n  \u003ca href=\"https://marketplace.visualstudio.com/items?itemName=jensen-wen.i18n-mage\"\u003e\n    \u003cimg src=\"https://img.shields.io/visual-studio-marketplace/v/jensen-wen.i18n-mage.svg?label=VS%20Code%20Marketplace\" alt=\"VS Code Marketplace\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://open-vsx.org/extension/jensen-wen/i18n-mage\"\u003e\n    \u003cimg src=\"https://img.shields.io/open-vsx/v/jensen-wen/i18n-mage?label=Open%20VSX\" alt=\"Open VSX Version\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/baimohui/i18n-mage/stargazers\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/stars/baimohui/i18n-mage?style=social\" alt=\"GitHub Stars\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/baimohui/i18n-mage/blob/main/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/License-MIT-green.svg\" alt=\"License: MIT\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/baimohui/i18n-mage/issues\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/issues/baimohui/i18n-mage\" alt=\"Issues\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://deepwiki.com/baimohui/i18n-mage\"\u003e\n    \u003cimg src=\"https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/public/badge.png\" alt=\"Ask DeepWiki\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n---\n## ✨ Features\n\n### 🌳 Translation Tree Overview\n\n* Displays an overview panel via the VS Code sidebar.\n* Includes statistics (total keys, missing translations, etc.).\n* Sync status per language file.\n* Tree-structured view of translation entries.\n* Functional buttons: Search, Export, Import, Sort, Fix.\n\n![Tree Provider](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/panel-view.png)\n\n### 🧠 Inline Translation Hints\n\n* Show actual translation inline where `t()` is used.\n* Supports custom styles (color, max length, etc.).\n* Toggleable via shortcuts.\n\n![Inline Hints](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/inline-hints.gif)\n\n### ⚡ Intelligent Code Completion\n\n* Automatically suggests existing translation entries when typing internationalization functions (e.g., `t(\"...\")`)\n* Supports candidate filtering by key, value, or bidirectional matching\n* Auto-fills translation keys to boost multilingual development efficiency\n\n![Code Completion](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/completion.gif)\n\n### 🚧 Auto-Fill Missing Translations\n\n- Integrates global providers (DeepL, Google, OpenAI/ChatGPT) and optional regional providers (DeepSeek, Baidu, Tencent, Youdao)\n- Fill missing translations automatically with preview and manual review\n\n![Auto-Fill Missing Translations](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/fill-missing-translations.gif)\n\n### 🧹 Auto-Fix Undefined Entries\n\n- Detect undefined entries\n- Match existing entries or extract text into new entries\n- Support customizable key naming strategies\n\n![Auto-Fix Undefined Entries](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/fix-undefined-entries.gif)\n\n### 🛄 Extract Hardcoded Texts\n- Scan hardcoded texts and batch-extract them into i18n keys\n- Replace source code and write back into language files\n- Preview before apply, suitable for migrating legacy projects\n\n![Extract Hardcoded Texts](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/extract-hardcoded-text.gif)\n\n### 🕵️ Detect Unused Keys\n\n* Analyzes usage of all keys.\n* Pattern matching for dynamic keys.\n* Delete or mark as used manually.\n\n![Detect Unused Keys](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/check-usage.gif)\n\n### 🔍 Search Translation Entries\n\n- Search across languages to locate target entries quickly\n- Support whole-word and case-sensitive search\n\n![Search Translation Entries](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/search.gif)\n\n### 📊 Excel Import/Export\n\n- Export entries to Excel for translation teams\n- Import translations from Excel and write back automatically\n- Export git-based diff sheets (ADD/MODIFY/DELETE)\n- Import diff sheets back into project\n\n![Excel Import/Export](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/excel.png)\n\n### 📋 Cross-Project Entry Migration\n- Copy entries by file or prefix into clipboard\n- Paste copied entries into target projects for fast migration\n\n![Copy Translation Data](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/copy-entries.gif)\n\n### Write Sorting\n- Sort by key name or first occurrence position\n- Reduce noisy diffs after fixes\n![Sorting](https://raw.githubusercontent.com/baimohui/i18n-mage-docs/refs/heads/main/docs/en/guide/images/sorting.gif)\n\n## ⚡ Quick Start\n\n### 1. Install the Extension\n\n**Option 1: Install from VS Code**\n1. Open VS Code and go to Extensions (`Ctrl+Shift+X` / `Cmd+Shift+X`)\n2. Search for `i18n Mage`\n3. Click **Install**\n\n**Option 2: Command Line Installation**\n```bash\next install jensen-wen.i18n-mage\n```\n\n**Option 3: Manual Installation**  \nVisit the [Marketplace Page](https://marketplace.visualstudio.com/items?itemName=jensen-wen.i18n-mage) to install.\n\n### 2. Open Translation Panel\n\n- The extension automatically scans your project's i18n directory after activation\n- Click the i18n Mage icon in the sidebar to open the translation panel\n- Right-click in the panel to manually set translation directory if not auto-detected\n\n### 3. Set Languages\n\n- Right-click to configure display and source languages\n- Manually assign languages to files if automatic detection fails\n\n### 4. Configure Translation Services (Optional)\n\n- Supported services: DeepL, Google, DeepSeek, Baidu, Tencent\n- Configuration path: `Settings → Extensions → i18n Mage → Translation Services`\n\n## 🧰 Configuration\n\n### 🚀 Key Categories\n\n* General settings\n* Framework support (e.g. translation function names, interpolation)\n* Translation services (API keys, reference language)\n* Analysis rules (file scanning, auto detection)\n* Write rules (key style, quote style, indentation)\n* Inline hint styling\n* Workspace-specific settings\n\n\u003e All settings are accessible via the VS Code Settings UI or in `.vscode/settings.json`.\n\n\u003c!-- See [Full Config Reference](#-full-config-reference) for all options. --\u003e\n\n## 🤝 Contributing\n\n```bash\ngit clone https://github.com/baimohui/i18n-mage.git\ncd i18n-mage\nnpm install\n# f5 to debug\nnpm run check\nnpm run build\n```\n\nFeel free to submit issues or PRs!\n\n## 📄 License\n\nMIT License © 2024-2025 Jensen Wen\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaimohui%2Fi18n-mage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbaimohui%2Fi18n-mage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbaimohui%2Fi18n-mage/lists"}