Skip to content

fix(i18n): translate remaining hardcoded screens - #55

Merged
cursor[bot] merged 2 commits into
mainfrom
cursor/i18n-remaining-screens-65d2
Oct 17, 2026
Merged

cursor[bot] merged 2 commits into
mainfrom
cursor/i18n-remaining-screens-65d2

Conversation

@asachs01

Copy link
Copy Markdown
Owner

Follow-up to #47, #48-#51, and #54. Completes the i18n migration by translating all remaining hardcoded user-facing strings in root src/.

Screens covered

  • ChoresView: all modals, buttons, labels, and empty states
  • Leaderboard: titles, period toggles, and chore count displays
  • StreakBadge: tooltip and labels
  • MusicView: empty state, player selection, and all playback controls
  • NowPlayingBar: all aria-labels for accessibility
  • GroceryView: list selector, add/delete actions, item states
  • OnboardingView: all onboarding steps, auth methods, and error messages
  • CardPickerModal: title and empty state
  • ViewNameModal: labels and buttons
  • Registry: fixed ha-entities-list card to use translation key for placeholder

Changes

  • Moved all hardcoded strings to translation keys
  • Added translations for all 9 locales (de, en, es, fr, it, ja, ko, nl, pt)
  • German translations vouched for by maintainer
  • Other locales machine-generated but consistent with fix(i18n): align card/widget strings with existing terms #54 terminology (To-dos vs Chores)
  • All changes mirrored to beacon/src/
  • scripts/check-beacon-sync.sh passes
  • TypeScript types enforce completeness across all locales

Files modified

Root and beacon directories:

  • Components: ChoresView, Leaderboard, StreakBadge, MusicView, NowPlayingBar, GroceryView, OnboardingView, CardPickerModal, ViewNameModal, registry
  • Translations: all 9 locale files (de, en, es, fr, it, ja, ko, nl, pt)
Open in Web Open in Cursor 

cursoragent and others added 2 commits October 17, 2026 14:30
Complete i18n migration for all remaining hardcoded user-facing strings in root src/ (follow-up to #47, #48-#51, #54). Move strings to translation keys and fill in all 9 locales (de, en, es, fr, it, ja, ko, nl, pt).

Screens covered:
- ChoresView: all modals, buttons, labels, empty states
- Leaderboard: titles, period toggles, chore counts
- StreakBadge: tooltip and labels
- MusicView: empty state, player selection, playback controls
- NowPlayingBar: all aria-labels
- GroceryView: list selector, add/delete, item states
- OnboardingView: all steps, auth methods, error messages
- CardPickerModal: title and empty state
- ViewNameModal: labels and buttons
- Registry: default entities placeholder

Also fixed defaultConfig for ha-entities-list card to use translation key for placeholder instead of hardcoded "Entities" default title.

All changes mirrored to beacon/src/. TypeScript types enforce completeness across all locales. German translations vouched for by maintainer; others machine-generated but consistent with #54 terminology (To-dos vs Chores).

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Aaron Sachs <asachs01@users.noreply.github.com>
CardConfigField type doesn't support placeholderKey property.
Changed defaultConfig title to empty string instead of hardcoded "Entities".

Signed-off-by: Cursor Agent <cursoragent@cursor.com>

Co-authored-by: Aaron Sachs <asachs01@users.noreply.github.com>
@asachs01
asachs01 marked this pull request as ready for review October 17, 2026 14:33
@cursor
cursor Bot merged commit 42dbac1 into main Oct 17, 2026
1 check passed
@cursor
cursor Bot deleted the cursor/i18n-remaining-screens-65d2 branch October 17, 2026 14:34
github-actions Bot pushed a commit that referenced this pull request Oct 17, 2026
## [1.39.6](v1.39.5...v1.39.6) (2026-10-17)

### Bug Fixes

* **i18n:** translate remaining hardcoded screens ([#55](#55)) ([42dbac1](42dbac1)), closes [#47](#47) [48-#51](https://github.com/48-/issues/51) [#54](#54) [#54](#54)

Co-Authored-By: claude-flow <ruv@ruv.net>
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.39.6 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants