Skip to content

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

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions