Skip to content

feat(i18n): add full Arabic localization with RTL support - #2

Open
ko-co87de wants to merge 4 commits into
bbdd2729:mainfrom
ko-co87de:arabic
Open

ko-co87de wants to merge 4 commits into
bbdd2729:mainfrom
ko-co87de:arabic

Conversation

@ko-co87de

@ko-co87de ko-co87de commented Oct 2, 2026 •

Copy link
Copy Markdown

Summary

Adds complete Arabic localization to TomoRead:

  • Locale setup: flutter_localizations dependency, Locale('ar') as default, RTL direction support
  • Translated all UI strings in lib/features and lib/app to Arabic (~101 files, 1000+ strings)
  • Preserved all parsing logic, regex patterns, and fixtures in lib/data and lib/domain untouched (Chinese chapter-parsing regexes still work for Chinese books)

What was NOT changed

  • Test suite (36 files still assert Chinese UI strings — they need a separate pass)
  • lib/data and lib/domain parsers/fixtures (intentionally untouched to avoid breaking Chinese book support)

Commits

  1. chore(i18n): add Arabic locale, RTL and flutter_localizations
  2. feat(i18n): translate all UI strings to Arabic
  3. fix(i18n): restore dropped interpolation tokens, remove AI-inserted bidi controls

Notes

  • All interpolation placeholders ($var, ${expr}) verified intact via automated diff against upstream
  • No bidi control characters (U+202E etc.) remain
  • flutter analyze lib passes with 0 issues
  • CI passes flutter analyze lib and flutter build apk --release

Automatic translation with manual QA on token integrity, JSON/HTML literals, and regex patterns.

- translated lib/features and lib/app string literals (zh -> ar)
- keep Chinese chapter-parsing regexes/data untouched in lib/data, lib/domain
- comment-aware scanner fix for translation tooling
- add Build Arabic APK workflow (no test gate)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant