Skip to content

[Feat] Add full multilingual (i18n) support across user-facing messages #15

@SanidhyaMadheshia

Description

@SanidhyaMadheshia

What do we need?

The app currently lacks full multilingual support. While Rocket.Chat i18n is used
for settings labels, most user-facing strings (messages, modals, commands, and
notifications) are hardcoded in English.

We need a centralized internationalization (i18n) system so that all user-facing
text can be translated and displayed based on the user's preferred language or
Rocket.Chat locale.

This solves the issue where non-English users receive English-only responses
even when Rocket.Chat is configured for another language.

Without full i18n support:

  • The app is not accessible to global users
  • Language consistency is broken
  • Adding new languages in the future is difficult

Proper multilingual support makes the app production-ready and usable by
international teams.

Acceptance Criteria

  • Create a centralized translation configuration (i18n module)
  • Replace hardcoded English strings with translation keys
  • Update mainAppResponses to return localized strings
  • Localize all modals (titles, buttons, body text)
  • Localize slash command descriptions and help messages
  • Store and retrieve user language preference
  • Fallback to English when translation is missing
  • Ensure no user-facing runtime text is hardcoded

Relevant ScreenShots

N/A – issue identified via code inspection.

Affected files include:

  • mainAppResponses.ts
  • Command handlers
  • Modal components (GetLocationModal, ReminderModal)
  • Slash command definitions

Further Comments

This feature can leverage Rocket.Chat’s existing i18n infrastructure while adding
app-level translation management.

Optional future enhancement:

  • Auto-detect language from Rocket.Chat locale
  • Add a slash command to manually set preferred language

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions