/ components / frontend / F009-i18n.component.cspec
F009-i18n.component.cspec
  1  # F009-i18n.component.cspec
  2  
  3  metadata:
  4    id: F009
  5    name: i18n
  6    version: 1.0.0
  7    domain: frontend
  8    stability: stable
  9    updated: 2026-01-14
 10    cascade_priority: 5
 11    roles:
 12      primary: [Dev]
 13      review: []
 14    expertise:
 15      required: [localization, i18n]
 16      helpful: [translation, rtl]
 17    context_tags: [i18n, localization, translation, languages, rtl]
 18  
 19  dependencies:
 20    upstream: []
 21    downstream: [F002, F003, F004, F006, F007]
 22  
 23  interface:
 24    types_ref: _registry/types.cspec
 25    types:
 26      translation_status: enum[ai, reviewed, certified]
 27      language_direction: enum[ltr, rtl]
 28      string_entry: {key: string, source: string, translations: map}
 29  
 30  spec:
 31    # === PURPOSE ===
 32    purpose: Localization resources (20 languages at launch)
 33  
 34    # === STRUCTURE ===
 35    structure:
 36      acdc-i18n/:
 37        _meta.json: language_definitions
 38        namespaces/:
 39          - common.json
 40          - wallet.json
 41          - trading.json
 42          - governance.json
 43          - onboarding.json
 44          - settings.json
 45          - errors.json
 46          - scanner.json
 47        tools/:
 48          - extract.js
 49          - validate.js
 50          - ai-translate.js
 51          - export-review.js
 52  
 53    # === STRING FORMAT ===
 54    string_format:
 55      key: "unique.namespace.identifier"
 56      source: "English text"
 57      context: "Usage description for translators"
 58      max_length: number_or_null
 59      placeholders: ["var1", "var2"]
 60      translations:
 61        lang_code:
 62          text: "Translated text"
 63          status: ai | reviewed | certified
 64  
 65    # === LAUNCH LANGUAGES (20) ===
 66    languages:
 67      ltr:
 68        - en: English (source)
 69        - zh-CN: Chinese Simplified
 70        - hi: Hindi
 71        - es: Spanish
 72        - fr: French
 73        - bn: Bengali
 74        - pt: Portuguese
 75        - ru: Russian
 76        - ja: Japanese
 77        - id: Indonesian
 78        - de: German
 79        - ko: Korean
 80        - tr: Turkish
 81        - vi: Vietnamese
 82        - it: Italian
 83        - th: Thai
 84        - pl: Polish
 85        - nl: Dutch
 86      rtl:
 87        - ar: Arabic
 88        - he: Hebrew
 89  
 90    # === LAYOUT ADAPTATION ===
 91    layout:
 92      rtl_languages:
 93        - mirror_layout_horizontally
 94        - navigation_on_right
 95        - text_align_right
 96        - numbers_remain_ltr
 97      text_expansion:
 98        - design_for_1.5x_english_length
 99        - use_flexible_containers
100        - respect_max_length_constraints
101  
102    # === TRANSLATION WORKFLOW ===
103    workflow:
104      initial: ai_generated
105      review: human_reviewed
106      certified: professional_certified
107      status_display: shown_to_users_optionally
108  
109  changelog:
110    - version: 1.0.0
111      date: 2026-01-14
112      type: initial
113      description: "Initial i18n spec from Implementation Plan v1.0"
114      breaking: false