Conversation
Add a complete Turkish (tr) message catalog and register tr as a supported interface locale and native language across the frontend and backend: locale lists, browser-language detection, registration, settings and admin selectors, schema validation, voice session titles, lesson feedback, and transactional email templates. Turkish capitalizes language names, so tr is added to the capitalization set in formatLanguageName (lowercasing would also turn "İ" into a dotted "i̇"). The dashboard announcement keeps its existing ten stored locales; Turkish users fall back to the English translation.
Add Turkish interface language
- Extend dashboard banner locales and translation prompts to include `tr` - Allow legacy ten-locale banner records to remain readable until Turkish is added - Update admin and public banner responses to preserve missing translations - Add backend and frontend tests for Turkish source and legacy banner editing - Update UI locale lists, version badges, and What’s New version strings to `1.9.25` - Refresh changelog and localization files for the Turkish interface release - Update specs and version metadata to reflect eleven supported locales
- Replace hardcoded tooltips, aria labels, and sr-only text with locale strings across chat, feedback, flashcards, phrasebook, layout, loading, landing nav, sheet, and word tooltip components - Add missing translation keys for delete, menu open/close, voice session, copy phrase, and vote actions in all supported locales - Update assistant avatar alt text from Tutor to Lingu in chat and transcript components - Start review prompt in a checking state, reset it when closed, and wait for the existing-review lookup before showing the rating form - Extend frontend tests to cover localized labels, vote toggle label updates, loading-state behavior, and translated close labels - Document localized tooltip and accessibility text behavior in frontend architecture specs and review prompt flow in review specs - Record the fixes in the changelog
- Add Swedish to supported UI, native language, and dashboard banner locale lists - Extend backend email, lesson feedback, voice session, and month-name localization for sv - Update dashboard banner translation prompts and schemas to require twelve locales - Add Swedish translations to message catalogs and refresh Whats New copy - Update frontend locale detection, admin UI options, and registration/profile language pickers - Add tests covering Swedish locale handling, banner translation, and middleware detection
- Reflow the DashboardBannerLocale type alias across multiple lines - Keep the allowed locale set unchanged while improving readability
- Add `da` to supported locales, UI locale lists, and locale detection - Include Danish translations for emails, lesson feedback, voice titles, and month names - Extend dashboard banner schemas, translation prompt, and tests for 13 locales - Add Danish message catalog and update frontend/i18n tests to include it - Document Danish in the README and changelog
- Combine Turkish, Swedish, and Danish language additions into a single changelog entry - Clarify that the three languages are available for interface and native-language options, not study languages - Update dashboard announcements language support wording to cover source and translation use
- Add fi to supported UI, native language, and dashboard banner locale sets - Extend dashboard banner translation prompt, schemas, and admin validation for Finnish - Add Finnish voice session titles, month names, and lesson feedback strings - Add Finnish verification, password reset, welcome, deletion, contact, feedback, and review email templates - Introduce fi message catalog and update existing locale catalogs with Finnish names - Update frontend locale lists, locale detection, onboarding, and admin banner handling for fi - Add tests covering Finnish auth, middleware detection, voice titles, and banner translation flows
- Add `hr` to supported auth, admin, UI, and dashboard banner locale sets - Extend dashboard banner translation handling to 15 locales and update tests - Add Croatian answer feedback, voice session titles, month names, and email templates - Add Croatian UI strings to message catalogs and locale detection logic - Update frontend locale lists, registration, settings, and admin screens to include `hr` - Add tests for Croatian auth, middleware detection, pluralization, and banner flows
- Resolve grammar, vocabulary, and phrasebook native-language help through the `languages` catalog - Add localized FAQ text clarifying that public registration is disabled by default in NL, PL, RO, and RU - Format voice conversation titles with Danish and Finnish ordinal day punctuation - Expand voice conversation tests for Danish and Finnish title formatting - Document native-language help label resolution and voice title date rules in specs
- Use the active UI locale for dates, numbers, prices, and counts across feedback, reviews, admin users, progress, onboarding, billing, assessment, and conversation flows - Localize admin author badges and flashcards, grammar, vocabulary, and paywall copy with translated strings and plural forms - Add shared error-message translations and update vocabulary set labels to use ICU plurals in all supported locales - Fix German voice-session date formatting to use an ordinal day suffix - Update the dashboard banner source-locale selector to load the selected translation before saving - Expand and adjust frontend and i18n tests for locale-aware formatting, pluralization, and banner source selection - Refresh changelog and API spec notes for the fifteen-locale banner and localization changes
- Mock `fetchMyReview` with a deferred promise in the rating plus comment test - Resolve the pending review lookup inside `act` before asserting validation state - Keep the test aligned with async review loading behavior
- Use translated target-language labels in admin reviews and language bubbles - Replace star and review aria labels with locale-aware rating strings - Localize payment recovery titles and descriptions in billing banners - Map auth, assessment, chat, onboarding, profile, and settings failures to generic translated errors - Handle known validation and quota cases with localized messages in login, register, reset password, and chat - Update tests and specs for localized error handling and rating labels
- Pass the selected locale into email template rendering and set HTML lang accordingly - Update transactional email tests to verify rendered locale declarations - Sync locale cookies on profile save and reload only when the displayed locale changes - Enforce 10-25 character password length on reset and surface requirements in the UI - Localize conversation error codes and hide backend transport diagnostics from users - Add translated voice trial and speech error strings across supported locales - Fix Croatian comment pluralization and extend plural coverage tests - Update password reset and voice message localization tests to cover the new behavior
- Preserve supported `NEXT_LOCALE` cookies during initial browser locale detection - Ignore `Accept-Language` entries with zero or out-of-range quality values - Update admin language code comments to match supported native-language locales - Add ICU plural forms for Danish, Finnish, Swedish, and Croatian messages - Document locale resolution behavior changes in platform instructions - Record the locale detection fix in the changelog
feature: expand interface support to 15 languages
- Set the 1.9.25 changelog entry date to 2026-09-25
- Sort dashboard banner locale selectors by translated language name using the active UI locale collation - Replace completion checkmarks in translation options with a localized pending suffix for incomplete entries - Add pending translation labels to all supported message catalogs - Update frontend architecture guidance to reflect locale sorting and pending-state display behavior
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.