i18n: automated Crowdin translation import (all languages)#17704
i18n: automated Crowdin translation import (all languages)#17704
Conversation
|
❌ Deploy Preview for ethereumorg failed.
|
|
🌐 Translation review started. View progress |
Translation Quality ReviewPR: #17704 — i18n: automated Crowdin translation import (all languages) Key Finding: Widespread Incomplete Translations22 of 24 languages are severely incomplete (~95% of body content left in English). Only Arabic (ar) and Bengali (bn) have substantially complete translations. All other languages have only a handful of translated elements (typically 3-5 section headings and 1-2 isolated sentences) while the entire tutorial body remains in English. 16 of 24 languages have critical Summary by Language
Critical Issues (Must Fix)1. Tag
|
| Language | Current Tag Value | Should Be |
|---|---|---|
| ar | "الصلابة" |
"solidity" |
| bn | "সলিডিটি" |
"solidity" |
| es | "Solidity" (capitalized) |
"solidity" |
| fr | "solidité" |
"solidity" |
| hi | "सोलिडीटी" |
"solidity" |
| ko | "솔리디티" |
"solidity" |
| mr | "सॉलिडिटी" |
"solidity" |
| pt-br | "solidez" |
"solidity" |
| ru | "твердость" |
"solidity" |
| sw | "uimara" |
"solidity" |
| ta | "திட்பம்" |
"solidity" |
| te | "దృఢత్వం" |
"solidity" |
| tr | "katılık" |
"solidity" |
| uk | "мова програмування" |
"solidity" |
| zh-tw | "穩固" |
"solidity" |
Additionally, ar has two more tags translated: "بدون-غاز" → "gasless", "معاملات-وصفية" → "meta-transactions".
Several languages also capitalized "solidity" to "Solidity" (id, it, ja, zh) — while less severe, this diverges from the source tag convention.
2. Brand Names Translated in Body Text
| Language | Line | Issue | Current | Expected |
|---|---|---|---|---|
| es | 25 | Solidity → Spanish word | Solidez |
Solidity |
| ko | 25 | Solidity transliterated | 솔리디티 |
Solidity |
| ko | 26 | JavaScript transliterated | 자바스크립트 |
JavaScript |
| sw | 25 | Solidity translated | Uimara |
Solidity |
| ta | 26 | JavaScript transliterated | ஜாவாஸ்கிரிப்ட் |
JavaScript |
| te | 26 | JavaScript transliterated | జావాస్క్రిప్ట్ |
JavaScript |
3. Structural/Metadata Issues
| Language | Line | Issue | Details |
|---|---|---|---|
| ur | 7 | Wrong lang code |
lang: ur-in should be lang: ur |
| de | 4 | Author field modified | German biographical text appended to author name |
| zh-tw | 4 | Author field prefixed | "作者:Ori Pomerantz" should be "Ori Pomerantz" |
| te | 6 | skill field translated |
"మధ్యస్థ" should be "intermediate" |
Warnings (Common Across Languages)
Mixed-Language Paragraphs
Nearly every incomplete translation has a partially-translated sentence at the same location (around line 312 in the Vulnerabilities section), creating jarring English-LocalLanguage-English text within a single paragraph.
Untranslated Frontmatter
Most languages left title and description fields in English. These are user-visible fields that should be translated.
Inconsistent Translation Coverage
A common pattern: only 3-5 section headings translated (Introduction, Prerequisites, Conclusion), plus one step ("Start the server") and one sentence in the Vulnerabilities section. Everything else untranslated.
Quality Scores by Language
ar — Arabic — 8.6/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | All brand names in prose preserved; 3 tags translated |
| Technical Accuracy | 8/10 | ETH, gas, EIP-712 correctly preserved; some in-code strings translated |
| Semantic Fidelity | 9/10 | Accurate throughout |
| Terminology Consistency | 9/10 | Consistent terminology |
| Tone/Register | 9/10 | Consistent formal MSA register |
Summary: Good quality, fully translated. Main issues: 3 frontmatter tags translated to Arabic, and some in-code string literals translated (e.g., "Wallet not connected" → Arabic).
bn — Bengali — 8.8/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | Tag "সলিডিটি" needs fix; all prose brand names correct |
| Technical Accuracy | 8/10 | ERC-712 typo (from English source) |
| Semantic Fidelity | 9/10 | Faithful throughout |
| Terminology Consistency | 9/10 | Consistent |
| Tone/Register | 10/10 | Consistent formal register |
Summary: High quality, fully translated. Fix the "solidity" tag and this is production-ready. The ERC-712 reference at line 358 is inherited from the English source.
cs — Czech — 3.0/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 9/10 | No brand name violations |
| Technical Accuracy | 1/10 | ~95% untranslated |
| Semantic Fidelity | 1/10 | Only 4 Czech elements |
| Terminology Consistency | 2/10 | Cannot assess |
| Tone/Register | 2/10 | Cannot assess |
Summary: Severely incomplete. Only headings Úvod, Předpoklady, Závěr, one step, and one partial sentence translated.
de — German — 5.0/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 9/10 | All preserved |
| Technical Accuracy | 7/10 | Few translated lines are correct |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | 4/10 | Uses formal Sie (appropriate) |
Summary: Severely incomplete. Author field incorrectly modified with German biographical text. Uses formal "Sie" register where translated.
es — Spanish — 3.5/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 4/10 | Solidity → "Solidez" critical error |
| Technical Accuracy | 6/10 | Few translated lines OK |
| Semantic Fidelity | 3/10 | ~95% untranslated |
| Terminology Consistency | 4/10 | Cannot assess |
| Tone/Register | 5/10 | Cannot assess |
Summary: Severely incomplete. Critical: "Solidity" translated to "Solidez" (Spanish noun meaning firmness) on line 25.
fr — French — 4.6/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 5/10 | Tag "solidité" is a violation |
| Technical Accuracy | 6/10 | Few translated lines OK |
| Semantic Fidelity | 4/10 | ~95% untranslated |
| Terminology Consistency | 4/10 | Cannot assess |
| Tone/Register | 4/10 | Uses vous-implied forms |
Summary: Severely incomplete. Tag "solidité" must be reverted to "solidity".
hi — Hindi — 4.6/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 7/10 | Tag translated; body brands OK |
| Technical Accuracy | 5/10 | Cannot assess fully |
| Semantic Fidelity | 5/10 | ~95% untranslated |
| Terminology Consistency | 4/10 | Cannot assess |
| Tone/Register | 5/10 | Appropriate semi-formal |
Summary: Severely incomplete. Tag "सोलिडीटी" must be reverted. Author name transliterated to Devanagari (non-standard).
id — Indonesian — 2.0/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | Minor tag casing |
| Technical Accuracy | N/A | Cannot assess |
| Semantic Fidelity | 3/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | 4/10 | Cannot assess |
Summary: Severely incomplete. Only headings and one step translated.
it — Italian — 1.5/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 9/10 | Minor tag casing |
| Technical Accuracy | N/A | Cannot assess |
| Semantic Fidelity | 1/10 | ~95% untranslated |
| Terminology Consistency | N/A | Cannot assess |
| Tone/Register | N/A | Cannot assess |
Summary: Effectively untranslated. Only ~6 isolated strings in Italian.
ja — Japanese — 1.5/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | Tag casing change |
| Technical Accuracy | N/A | Cannot assess |
| Semantic Fidelity | 1/10 | ~95% untranslated |
| Terminology Consistency | N/A | Cannot assess |
| Tone/Register | 3/10 | Polite masu form where present |
Summary: Effectively untranslated. Only headings はじめに, 前提条件, 結論 and 2-3 isolated strings.
ko — Korean — 2.4/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 4/10 | Solidity→솔리디티, JavaScript→자바스크립트 |
| Technical Accuracy | N/A | Cannot assess |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 2/10 | Cannot assess |
| Tone/Register | 4/10 | 존댓말 where present |
Summary: Severely incomplete. Two brand names transliterated into Korean script — must remain English.
mr — Marathi — 4.8/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 7/10 | Tag translated; body brands OK |
| Technical Accuracy | 4/10 | Cannot assess fully |
| Semantic Fidelity | 3/10 | ~95% untranslated |
| Terminology Consistency | 5/10 | Cannot assess fully |
| Tone/Register | 5/10 | Appropriate register |
Summary: Severely incomplete. Tag "सॉलिडिटी" must be reverted.
pl — Polish — 2.5/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 10/10 | No violations |
| Technical Accuracy | 4/10 | Cannot assess fully |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | 3/10 | Cannot assess |
Summary: Severely incomplete but no brand name issues. Only headings Wprowadzenie, Wymagania wstępne, Wnioski and a few fragments translated.
pt-br — Brazilian Portuguese — 5.8/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 9/10 | Tag "solidez" needs fix |
| Technical Accuracy | 6/10 | Few translated lines OK |
| Semantic Fidelity | 4/10 | ~95% untranslated |
| Terminology Consistency | 5/10 | Cannot assess fully |
| Tone/Register | 5/10 | Appropriate register |
Summary: Severely incomplete. Tag "solidez" must be reverted. YAML author field uses block scalar style (minor).
ru — Russian — 2.2/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 3/10 | Tag "твердость" (literal translation) |
| Technical Accuracy | 2/10 | Cannot assess |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 1/10 | Cannot assess |
| Tone/Register | 3/10 | Cannot assess |
Summary: Severely incomplete. Tag "твердость" (Russian for "hardness") is a critical mistranslation. Author name transliterated.
sw — Swahili — 2.4/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 3/10 | Solidity→Uimara in tag AND body text |
| Technical Accuracy | 2/10 | Cannot assess |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 2/10 | Cannot assess |
| Tone/Register | 3/10 | Cannot assess |
Summary: Severely incomplete. Critical: "Solidity" translated to "Uimara" in both the tags array (line 5) and the prerequisites bullet (line 25).
ta — Tamil — 3.8/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 4/10 | Tag "திட்பம்", JavaScript transliterated |
| Technical Accuracy | 5/10 | Cannot assess fully |
| Semantic Fidelity | 3/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | 4/10 | Cannot assess |
Summary: Severely incomplete. Two critical brand issues. Also "Prerequisites" heading mistranslated as "முன்னேற்றக் கட்டுரை" (meaning "progress article").
te — Telugu — 5.2/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 5/10 | Tag translated, JavaScript transliterated |
| Technical Accuracy | 6/10 | Cannot assess fully |
| Semantic Fidelity | 6/10 | ~95% untranslated |
| Terminology Consistency | 4/10 | Cannot assess |
| Tone/Register | 5/10 | Cannot assess |
Summary: Severely incomplete. Tag "దృఢత్వం" and JavaScript transliteration need fixing. Also: skill field value translated to "మధ్యస్థ" (should remain "intermediate").
tr — Turkish — 1.2/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 1/10 | Tag "katılık" (hardness) |
| Technical Accuracy | 1/10 | Cannot assess |
| Semantic Fidelity | 1/10 | ~95% untranslated |
| Terminology Consistency | 1/10 | Cannot assess |
| Tone/Register | 2/10 | Cannot assess |
Summary: Effectively untranslated. Tag "katılık" is a severe mistranslation.
uk — Ukrainian — 3.2/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | Tag corrupted to "мова програмування" |
| Technical Accuracy | 3/10 | Cannot assess |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | N/A | Cannot assess |
Summary: Severely incomplete. Tag value "мова програмування" ("programming language") is the most unusual corruption — it's not even a translation of "solidity" but the category phrase.
ur — Urdu — 2.5/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | No brand issues in body |
| Technical Accuracy | 2/10 | Cannot assess |
| Semantic Fidelity | 2/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | 5/10 | Cannot assess |
Summary: Severely incomplete. Critical structural bug: lang: ur-in should be lang: ur — this will break i18n routing.
vi — Vietnamese — 1.9/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 9/10 | No violations |
| Technical Accuracy | 2/10 | Cannot assess |
| Semantic Fidelity | 1/10 | ~95% untranslated |
| Terminology Consistency | 3/10 | Cannot assess |
| Tone/Register | 4/10 | Cannot assess |
Summary: Effectively untranslated. No brand name issues but only ~5 lines translated.
zh — Chinese Simplified — 1.5/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 8/10 | Minor tag casing |
| Technical Accuracy | N/A | Cannot assess |
| Semantic Fidelity | 1/10 | ~95% untranslated |
| Terminology Consistency | N/A | Cannot assess |
| Tone/Register | 5/10 | Natural where present |
Summary: Effectively untranslated. Only headings 简介, 前提条件, 结论 and 2 isolated strings.
zh-tw — Chinese Traditional — 3.8/10
| Category | Score | Notes |
|---|---|---|
| Brand Name Preservation | 3/10 | Tag "穩固", author field prefixed |
| Technical Accuracy | 4/10 | Cannot assess fully |
| Semantic Fidelity | 3/10 | ~95% untranslated |
| Terminology Consistency | 4/10 | Cannot assess |
| Tone/Register | 5/10 | Natural where present |
Summary: Severely incomplete. Tag "穩固" must be reverted. Author field incorrectly prefixed with "作者:".
Recommendations
-
Merge-blocking issues: Fix all tag corruptions (16 languages), brand name translations in body text (es, ko, sw, ta, te), wrong
langcode (ur), author field corruptions (de, zh-tw), and skill field translation (te). -
Translation completeness: 22 of 24 languages have <5% translation coverage. This appears to be a Crowdin import of partially-completed translations. Consider whether these incomplete files should be merged or held until translations reach a higher completion threshold.
-
English source note: The English source at line 360 contains
ERC-712which should likely beEIP-712— this typo was faithfully reproduced in all translations.
To apply fixes, reply with:
@claude /review-translations --fix
Reviewed by Claude Code
Description
This PR contains automated gemini-2.5-pro translations from Crowdin.
🔗 View workflow run
Languages translated
ar, bn, cs, de, es, fr, hi, id, it, ja, ko, mr, pl, pt-br, ru, sw, ta, te, tr, uk, ur, vi, zh-tw, zh
Markdown changes (
public/content/translations/{locale}/)