Skip to content

feat(localization): add Azerbaijani and Russian translations#2727

Open
iamvaliyev wants to merge 2 commits into
GetStream:masterfrom
iamvaliyev:feat/add-az-ru-localizations
Open

feat(localization): add Azerbaijani and Russian translations#2727
iamvaliyev wants to merge 2 commits into
GetStream:masterfrom
iamvaliyev:feat/add-az-ru-localizations

Conversation

@iamvaliyev

@iamvaliyev iamvaliyev commented Jun 4, 2026

Copy link
Copy Markdown

Summary

Adds two new locales to stream_chat_localizations:

  • Azerbaijani (az) — full translation bundle (StreamChatLocalizationsAz).
  • Russian (ru) — full translation bundle (StreamChatLocalizationsRu), with proper Russian pluralization (one/few/many) for all count-based strings (e.g. 1 голос / 2 голоса / 5 голосов, members, replies, results, votes, threads, unread count).

Both locales are registered in GlobalStreamChatLocalizations (part directive, kStreamChatSupportedLanguages, and getStreamChatTranslation). The package README.md (supported languages, supportedLocales usage example, and iOS Info.plist example) and CHANGELOG.md are updated accordingly.

Each language is added in its own self-contained commit.

Test plan

  • dart analyze --fatal-infos lib — no issues
  • dart format --set-exit-if-changed . — no changes
  • flutter test — all tests pass, including the auto-generated translations exist for az and translations exist for ru cases in translations_test.dart
  • All StreamChatLocalizations members implemented for both locales (parity with en)

I have signed the Stream CLA.

Summary by CodeRabbit

  • New Features
    • Added Azerbaijani (az) and Russian (ru) locales with full UI translations, pluralization, relative date/time formatting, typing indicators, and poll support.
  • Bug Fixes / Improvements
    • Expanded localized strings for attachments, moderation, mute/pin toggles, unread/thread labels, and vote/count phrasing.
  • Documentation
    • Supported languages, usage examples, and changelog updated to include az and ru.

@coderabbitai

coderabbitai Bot commented Jun 4, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

The PR adds Azerbaijani (az) and Russian (ru) locales: docs updated, the localization registry wired, and two full translation implementations added (~1,400 lines).

Changes

Localization Language Support

Layer / File(s) Summary
Documentation and localization registry
packages/stream_chat_localizations/CHANGELOG.md, packages/stream_chat_localizations/README.md, packages/stream_chat_localizations/lib/src/stream_chat_localizations.dart
Changelog and README updated to list Azerbaijani and Russian. kStreamChatSupportedLanguages and getStreamChatTranslation were extended and part directives added for the new locales.
Azerbaijani localization implementation
packages/stream_chat_localizations/lib/src/stream_chat_localizations_az.dart
Adds StreamChatLocalizationsAz with Azerbaijani translations and helpers: typing text, attachment progress, pin/delete/resend toggles, _getDay/sentAtText, counts, mute/unmute variants, unread labels, poll validation/messages, and vote labels.
Russian localization implementation
packages/stream_chat_localizations/lib/src/stream_chat_localizations_ru.dart
Adds StreamChatLocalizationsRu with Russian translations and helpers: _plural pluralization, typing/text plural rules, _getDay/sentAtText using Jiffy, toggle/mute variants, poll validation/messages, and vote/count pluralization.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰 Nibbling carrots, I translate with cheer,
az and ru now whisper in chat near.
Strings hop in place from Baku to Rus,
My whiskers twitch—locales updated thus.
🎉

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main change: adding Azerbaijani and Russian translations to the localization package.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@iamvaliyev iamvaliyev changed the title feat(localizations): add Azerbaijani and Russian translations feat(localization): add Azerbaijani and Russian translations Jun 4, 2026
@iamvaliyev iamvaliyev force-pushed the feat/add-az-ru-localizations branch 2 times, most recently from a22aa86 to aa9c804 Compare June 6, 2026 11:23
@codecov

codecov Bot commented Jun 8, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 66.52%. Comparing base (e19b1ce) to head (aa9c804).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2727      +/-   ##
==========================================
+ Coverage   65.96%   66.52%   +0.56%     
==========================================
  Files         425      427       +2     
  Lines       26926    27381     +455     
==========================================
+ Hits        17761    18216     +455     
  Misses       9165     9165              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Emil Valiyev and others added 2 commits June 10, 2026 19:34
Add Azerbaijani localization for the Stream Chat widgets, implementing
StreamChatLocalizationsAz against the v10 localization interface and
registering the `az` locale. Update the README and changelog accordingly.

Co-authored-by: Cursor <cursoragent@cursor.com>
Add Russian localization for the Stream Chat widgets, implementing
StreamChatLocalizationsRu against the v10 localization interface with
proper Russian plural forms (one/few/many) for count-based strings, and
registering the `ru` locale. Update the README and changelog accordingly.

Co-authored-by: Cursor <cursoragent@cursor.com>
@iamvaliyev iamvaliyev force-pushed the feat/add-az-ru-localizations branch from aa9c804 to 9a77662 Compare June 10, 2026 17:37
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