Skip to content

Improve pt-BR coverage and localize hardcoded onboarding UI#1856

Open
idlukakas wants to merge 4 commits intofrappe:developfrom
univesp:codex/pt-br-i18n-upstream
Open

Improve pt-BR coverage and localize hardcoded onboarding UI#1856
idlukakas wants to merge 4 commits intofrappe:developfrom
univesp:codex/pt-br-i18n-upstream

Conversation

@idlukakas
Copy link
Copy Markdown

This PR improves Brazilian Portuguese coverage in Frappe CRM and removes a remaining class of English-only UI strings that could not be translated through crm/locale/pt_BR.po alone.

The visible problem for pt-BR users was that the main CRM views were partially translated, but onboarding/help/sidebar surfaces still rendered English strings such as Getting started, Welcome to Frappe CRM, Skip all, Start now, Help centre, Loved the demo?, and trial-banner copy. From the user perspective, that made the product feel only partially localized even when the site and user language were set to pt-BR.

The underlying cause was split in two parts. First, the pt_BR.po catalog still had missing or inaccurate Brazilian Portuguese entries for some CRM route labels and onboarding-related strings. Second, some of the remaining English strings were not coming from CRM-local templates that already pass through the app's gettext catalog. They were rendered by frappe-ui onboarding/help/banner components with hardcoded English copy, so updating the locale file alone was not enough to localize those surfaces.

This change addresses both layers. It expands and normalizes the Brazilian Portuguese catalog in crm/locale/pt_BR.po, including route labels and onboarding/help text, and it adds local Vue wrappers for the onboarding, help-center, and billing banner components so their labels now call __() and can be translated by CRM. AppSidebar.vue is then updated to import these local wrappers instead of the English-only variants.

The result is that the existing CRM localization flow can now cover these UI areas consistently, which should make future pt-BR usage much less fragmented and reduce the need for downstream patching in forks.

Validation used for this patch:

  • msgfmt -c -o /tmp/pt_BR-pr.mo crm/locale/pt_BR.po
  • npx eslint src/components/Layouts/AppSidebar.vue src/components/Billing/SignupBanner.vue src/components/Billing/TrialBanner.vue src/components/Help/HelpCenter.vue src/components/Help/HelpModal.vue src/components/Onboarding/GettingStartedBanner.vue src/components/Onboarding/IntermediateStepModal.vue src/components/Onboarding/OnboardingSteps.vue

Notes:

  • This PR is intentionally limited to pt-BR localization and translation-enabling UI changes.
  • I did not include a regenerated crm/locale/main.pot in this PR because the extraction toolchain available in this environment produced a noisy, non-minimal POT diff against develop. The runtime-facing localization changes here are isolated and reviewable on their own.

@idlukakas idlukakas marked this pull request as ready for review March 16, 2026 20:08
@idlukakas idlukakas changed the title [codex] Improve pt-BR coverage and localize hardcoded onboarding UI Improve pt-BR coverage and localize hardcoded onboarding UI Mar 16, 2026
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