Skip to content

MAGIK-923: Multi-Language Translation Files (en, es, ar, am, ti) #102

@MAGIKBIT

Description

@MAGIKBIT

Story 2 — Multi-Language Translation Files

Epic: EPIC-010 — Global Internationalization & Multi-Language Support (GitHub #100)
Priority: P0

User Story

As a MagikTap user, I want all UI labels, messages, and notifications available in my language (English, Spanish, Arabic, Amharic, or Tigrigna), so I can use the platform comfortably.

Requirements

Translation File Structure

Create Language/{locale}/{group}.php files for all 5 locales:

Language/
├── en/
│   ├── common.php      # Shared: buttons, labels, pagination, errors
│   ├── auth.php        # Login, register, password reset
│   ├── dashboard.php   # Dashboard widgets, stats, greetings
│   ├── cards.php       # Card list, card details, NFC
│   ├── profile.php     # Profile settings, social links, bio
│   ├── notifications.php # Notification types, actions
│   ├── leads.php       # Lead management, capture forms
│   ├── tickets.php     # Support tickets, statuses
│   ├── finance.php     # Plans, payments, subscriptions, commissions
│   └── admin.php       # Admin-specific labels, user management
├── es/                 # (same structure — Spanish)
├── ar/                 # (same structure — Arabic)
├── am/                 # (same structure — Amharic)
└── ti/                 # (same structure — Tigrigna)

Key Count Estimates

Group ~Keys Description
common 80+ Buttons (Save, Cancel, Delete), pagination, table headers, form labels
auth 30+ Login form, registration, password reset, validation messages
dashboard 40+ Widget titles, stat labels, greeting templates
cards 35+ Card list columns, card actions, NFC instructions
profile 45+ Settings tabs, social link labels, bio placeholder
notifications 25+ Notification types, mark read, delete, empty state
leads 30+ Lead columns, filters, capture form fields
tickets 30+ Ticket status, priority labels, reply actions
finance 50+ Plan names, pricing, subscription status, commission labels
admin 40+ User management, reseller management, system settings
Total ~405 Per locale

Translation Quality

  • English: developer-authored (source of truth)
  • Spanish: professional-grade translations
  • Arabic: professional-grade translations with RTL context notes
  • Amharic: native speaker translations (Ge'ez script: ግዕዝ)
  • Tigrigna: native speaker translations (Ge'ez script: ግዕዝ)

Acceptance Criteria

# Criteria Priority
1 All 10 translation groups created for en locale P0
2 All 10 translation groups created for es, ar, am, ti P0
3 Keys are consistent across all 5 locales P0
4 Ge'ez script characters render correctly (UTF-8) P0
5 Parameterized strings use {0}, {1} placeholders P1
6 Pluralization rules handle locale-specific cases P2

Files to Create

  • 50 files: Language/{en,es,ar,am,ti}/{common,auth,dashboard,cards,profile,notifications,leads,tickets,finance,admin}.php

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions