translate-i18n

Featured

Fill missing i18n translations in the viewer source JSON. Run this after adding or modifying English or Chinese UI strings in claude_tap/viewer_i18n.json — it auto-translates to ja, ko, fr, ar, de, ru via OpenRouter.

AI & Automation 3,113 stars 267 forks Updated yesterday MIT

Install

View on GitHub

Quality Score: 96/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Translate i18n Automatically fill missing translations for the viewer's `claude_tap/viewer_i18n.json` source file. The script uses English and Chinese as source languages and translates to Japanese, Korean, French, Arabic, German, and Russian. ## Prerequisites - `OPENROUTER_API_KEY` must be set in the environment (it is in the user's `.zshrc`) - Default model: `google/gemini-2.5-flash` ## Workflow ### 1. Check what's missing (dry run) Always preview first to confirm which keys need translation: ```bash uv run python scripts/translate_i18n.py --dry-run ``` This parses `claude_tap/viewer_i18n.json`, finds keys present in both `en` and `zh-CN` but missing in other languages, and lists them without modifying the file. ### 2. Run the translation ```bash uv run python scripts/translate_i18n.py ``` The script calls OpenRouter once per target language, then writes the translations back into `viewer_i18n.json` in-place. ### 3. Verify the result After translation, run the formatter and tests to make sure nothing broke: ```bash uv run python -m json.tool claude_tap/viewer_i18n.json >/dev/null uv run pytest tests/test_translate_i18n.py -v ``` ## Options | Flag | Purpose | |------|---------| | `--dry-run` | Show missing keys only, no file changes | | `--model MODEL` | Override the OpenRouter model (default: `google/gemini-2.5-flash`) | | `--target {viewer,cli}` | Translation target preset (default: `viewer`) | | `--file PATH` | Override target file path | | `--object-nam...

Details

Author
liaohch3
Repository
liaohch3/claude-tap
Created
6 months ago
Last Updated
yesterday
Language
Python
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category

Data & Documents Listed

i18n

Translate docs and i18n resource files, and keep translations in sync with their source. Use for 翻译文档, 本地化, 国际化, 多语言, 术语表, 同步翻译, 检查翻译, translate docs, localize, sync translations. Not for code comments or in-code strings.

0 Updated 1 weeks ago
koko-t7i
AI & Automation Listed

i18n-translate

Complete and maintain frontend i18n translations for this project. Covers finding missing translation keys, detecting untranslated entries, and adding translations for all supported locales (en, zh, zh-TW, fr, ja, ru, vi). Use for any task involving frontend locale files, missing translation keys, untranslated UI text, `t(...)` keys, `useTranslation()`, static i18n keys, button/label/ toast/dialog/placeholder/validation copy, or adding/fixing even a single i18n key. Use when review findings mention missing i18n, when new UI text needs translation, or when the user asks to add translations, fix i18n, or complete missing translations. Always load and follow this skill before translating, adding locale keys, or editing frontend i18n files.

0 Updated 5 days ago
MoleAPI
AI & Automation Listed

translate-init

Guided, step-by-step builder for a project's translation.config.json — the setup step before /translate. Walks the operator through every option ONE AT A TIME with a plain-language explanation of what it does and what to fill, pre-filling smart defaults it detects from the project (source language, formats, existing target languages). Captures the project's PURPOSE/CONTEXT (what the product is, so the translator picks the right sense of each word), the target languages, domain specialization, output layout, and the research/uncertainty preferences. Writes the config at the project's root and registers the folder as a tracked project. Use when the user says "set up translation for this project", "create the translation config", "configure translations", "initialize translation", "build the config step by step", or before a first /translate run on a project with no config.

2 Updated 1 weeks ago
roshaw