Skip to content

feat(i18n): translate auth pages + app shell (3.6) - #75

Merged
santidev21 merged 2 commits into
mainfrom
feat/i18n-auth-shell
Oct 6, 2026
Merged

santidev21 merged 2 commits into
mainfrom
feat/i18n-auth-shell

Conversation

@santidev21

Copy link
Copy Markdown
Owner

What

Second i18n surface (after the landing). Moves every user-facing string in the auth pages (login, register, forgot/reset/confirm) and the app shell (top/bottom nav) into the dictionaries.

  • Auth templates + their success/error messages use keys. The backend success copy is replaced by frontend keys (the backend only speaks Spanish, so it can't be translated client-side).
  • App shell translated; the ES/EN switcher is added to the profile menu so signed-in users can change language.
  • Two safety properties unchanged: missing keys fall back to Spanish, and ES remains the default.

Verification

  • Frontend: 216 tests pass; only the 5 specs that asserted the old backend-fed messages were updated to the new keys. Coverage 77.6% lines.
  • format:check + lint clean; AOT build passes.
  • E2E unaffected (default ES keeps the Spanish labels the specs use).

Remaining

Dashboard pages (home, motorcycle summary, maintenance, statistics, profile) and the legal/help long-form text → next PR. docs/specs/i18n.md tracks what's done.

santidev21 added 2 commits October 5, 2026 22:03
Second i18n surface. Move every user-facing string in login, register,
forgot/reset/confirm and the top/bottom nav into the dictionaries:

- Auth templates + their success/error messages now use keys; the
  backend-provided success copy is replaced by frontend keys (the backend
  messages are Spanish-only).
- App shell (nav) translated, and the ES/EN switcher is added to the
  profile menu so signed-in users can change language.
- Missing keys still fall back to Spanish, so nothing renders blank.

Dashboard pages (home/summary/maintenance/statistics/profile) and the
legal/help long-form text remain for the next PR.
…ce S2068 false positive

The es/en dictionaries mirror each other by design and the auth templates share
Tailwind markup, which CPD reads as duplication. Exclude both from copy-paste
detection and mark the 'common.password' label (not a credential) as NOSONAR.
@sonarqubecloud

sonarqubecloud Bot commented Oct 6, 2026

Copy link
Copy Markdown

@santidev21
santidev21 merged commit 7ffe8b7 into main Oct 6, 2026
14 checks passed
@santidev21
santidev21 deleted the feat/i18n-auth-shell branch October 6, 2026 03:12
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