Skip to content

[Feature]: Add a Portuguese Language #15738

@carloshenriquecarniatto

Description

Problem or Use Case

The dashboard UI only supports English and Chinese. Users who speak Portuguese (Brazil) have no native-language option in the language switcher.

Proposed Solution

Add a complete pt-BR translation file and update the i18n infrastructure to support a third locale.

Changes required

  • web/src/i18n/types.ts — Extend Locale union: "en" | "zh" | "pt"
  • web/src/i18n/pt.ts (new) — Full translation object implementing Translations, covering all sections: common, app, status, sessions, analytics, logs, cron, skills, config,
    env, oauth, language, theme
  • web/src/i18n/context.tsx — Import pt, add to TRANSLATIONS record, update getInitialLocale() guard
  • web/src/components/LanguageSwitcher.tsx — Refactor binary toggle into an N-locale cycle via LOCALE_CONFIG map, so adding future languages only requires a config entry

Notes

  • Technical terms kept in English where standard: Gateway, CLI, PKCE, Cron, Skill, Toolset
  • Interpolation placeholders ({count}, {input}, etc.) preserved as-is
  • Pluralization suffix {s} follows same convention as en.ts

Alternatives Considered

No response

Feature Type

Other

Scope

Small (single file, < 50 lines)

Contribution

  • I'd like to implement this myself and submit a PR

Debug Report (optional)

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low — cosmetic, nice to havetype/featureNew 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