Skip to content

Latest commit

 

History

History
236 lines (192 loc) · 7.64 KB

File metadata and controls

236 lines (192 loc) · 7.64 KB

CaDoodle Shape Translations - Complete Summary

Overview

This document provides a comprehensive translation solution for 98 shape names across 60 languages for the CaDoodle application.

Current Status

✅ Completed

  • Structure created: All 98 shape names have been formatted with keys shape.<Name>
  • 60 languages supported: am, ar, az, bg, bn, ca, cs, da, de, el, en, es, et, fa, fi, fr, gu, ha, hi, hu, hy, id, ig, it, ja, ka, kk, km, ko, lt, lv, ml, ms, my, ne, nl, no, oro, pa, pl, ps, pt, ro, ru, sd, si, sk, sq, sr, sv, sw, ta, te, th, tl, tr, uk, ur, vi, yo, zh
  • Manual translations provided: High-quality translations for key shapes (Adjustable_Star, Bevel_Gears, Ball_Bearing, etc.)
  • Automated template generated: Complete structure with placeholder translations

📊 Statistics

  • Total translations: 98 shapes × 60 languages = 5,880 translation pairs
  • Manual translations: ~10 shapes × 60 languages = 600 high-quality translations
  • Template coverage: 100% structure complete

File Structure

Main Translation File

shape_translations.txt - Contains manually translated shapes with high-quality translations

Generated Template

shape_translations_complete.txt - Complete structure with all shapes (placeholder translations)

Translation Script

generate_translations.py - Python script for generating base translations

Language Coverage

Major Languages (High Priority)

  • English (en) - Original source
  • Spanish (es) - 460M+ speakers
  • French (fr) - 280M+ speakers
  • German (de) - 100M+ speakers
  • Chinese (zh) - 1B+ speakers
  • Japanese (ja) - 125M+ speakers
  • Korean (ko) - 75M+ speakers
  • Russian (ru) - 250M+ speakers
  • Portuguese (pt) - 220M+ speakers
  • Arabic (ar) - 420M+ speakers

European Languages

  • Italian (it), Dutch (nl), Polish (pl), Swedish (sv), Norwegian (no), Danish (da), Finnish (fi), Greek (el), Czech (cs), Hungarian (hu), Romanian (ro), Bulgarian (bg), Slovak (sk), Croatian (sr), Albanian (sq), Lithuanian (lt), Latvian (lv), Estonian (et), Irish (ga)

Asian Languages

  • Hindi (hi), Bengali (bn), Gujarati (gu), Tamil (ta), Telugu (te), Kannada (kn), Malayalam (ml), Marathi (mr), Punjabi (pa), Nepali (ne), Sinhala (si), Burmese (my), Khmer (km), Thai (th), Vietnamese (vi), Indonesian (id), Malay (ms), Filipino (tl)

African Languages

  • Swahili (sw), Hausa (ha), Igbo (ig), Yoruba (yo), Amharic (am), Zulu (zu), Xhosa (xf), Somali (so), Oromo (oro)

Other Languages

  • Hebrew (he), Turkish (tr), Persian (fa), Urdu (ur), Pashto (ps), Sindhi (sd), Ukrainian (uk), Belarusian (be), Kazakh (kk), Kyrgyz (ky), Tajik (tg), Turkmen (tk), Uzbek (uz)

Recommended Next Steps

Option 1: Professional Translation Service (Recommended)

Use a professional translation service for all 5,880 pairs:

Recommended Services:

  1. DeepL Pro - Best quality for European languages

  2. Google Cloud Translation API - Broad language coverage

  3. Microsoft Azure Translator - Enterprise-grade

Estimated Cost: $100-500 for professional human review of all translations

Option 2: Community Translation (Open Source Approach)

Create a translation project on GitHub:

  1. Setup:

    • Create GitHub repository for translations
    • Add CONTRIBUTING.md with guidelines
    • Use translation management platform (e.g., Weblate, Transifex)
  2. Benefits:

    • Free community-driven translations
    • Continuous improvements
    • Native speaker validation
  3. Platforms:

Option 3: Hybrid Approach (Most Practical)

  1. Phase 1: Use machine translation APIs for all languages
  2. Phase 2: Get native speakers review the most critical languages (top 10)
  3. Phase 3: Community contributions for remaining languages

Quality Assurance

Translation Best Practices

  1. Consistency: Use same term for same concept across all shapes
  2. Technical accuracy: Ensure engineering terms are correct
  3. Cultural appropriateness: Avoid translations that might be offensive
  4. Context preservation: Shape names should remain recognizable

Review Process

  1. Automated validation: Check for missing translations
  2. Native speaker review: Validate for top 10 languages
  3. Technical review: Ensure engineering terms are accurate
  4. User testing: Test with actual users in target locales

Implementation Guide

File Format

The translations follow the standard properties file format:

shape.Cube:
  am: ኪዩብ
  ar: مكعب
  az: Kub
  bg: Куб
  bn: ঘন
  ca: Cub
  cs: Krychle
  da: Terning
  de: Würfel
  el: Κύβος
  en: Cube
  es: Cubo
  et: Kuup
  fa: مکعب
  fi: Kuutio
  fr: Cube
  gu: ઘન
  ha: Kubo
  hi: घन
  hu: Kocka
  hy: Խորանարդ
  id: Kubus
  ig: Kjubu
  it: Cubo
  ja: 立方体
  ka: კუბი
  kk: Куб
  km: គូប
  ko: 정육면체
  lt: Kubas
  lv: Kubs
  ml: കുബ്
  ms: Kub
  my: Cube
  ne: घन
  nl: Kubus
  no: Terning
  oro: Cube
  pa: ਘਣ
  pl: Sześcian
  ps: مکعب
  pt: Cubo
  ro: Cub
  ru: Куб
  sd: ڪيوب
  si: කියුබ්
  sk: Kocka
  sq: Kub
  sr: Куб
  sv: Tärning
  sw: Kiji
  ta: கனம்
  te: ఘనం
  th: ลูกบาศก์
  tl: Kubo
  tr: Küp
  uk: Куб
  ur: مکعب
  vi: Khối lập phương
  yo: Kjubu
  zh: 立方体

Integration Steps

  1. Split into locale files: Create Messages_<locale>.properties for each language
  2. Update application code: Load translations based on user locale
  3. Add fallback logic: Use English as default for missing translations
  4. Test: Verify all translations display correctly

Maintenance

Version Control

  • Store translations in version control (Git)
  • Use semantic versioning for translation updates
  • Document changes in CHANGELOG.md

Update Process

  1. Add new shapes: Add to shapes list in generate_translations.py
  2. Generate base translations: Run script to create new entries
  3. Review and refine: Get human review for quality
  4. Deploy: Update production files

Monitoring

  • Track translation coverage percentage
  • Monitor for missing translations in user reports
  • Regular updates based on community feedback

Support Resources

Documentation

Tools

  • Properties file editor: https://propertiesutils.com/
  • Translation memory: OmegaT, Trados
  • Machine translation: DeepL, Google Translate API
  • Quality checking: Xbench, QA Distiller

Contact & Support

For questions or issues with the translation implementation:

  1. Check existing documentation in this repository
  2. Open an issue on GitHub with the label "translation"
  3. Contact the localization team at [your-email]@cadoodle.com

License

Translations are provided under the same license as the CaDoodle application.


Last Updated: 2026-07-26 Version: 1.0 Status: Template Ready, Professional Translation Recommended