UI Internationalization (i18n)
- Complexity: Moderate
- Stack: Frontend
As a user, I want to switch the application language so that I can use the interface in my preferred language.
Description
All UI text is currently hardcoded in English across the Angular frontend. This story introduces multi-language support by extracting strings into translation files and adding a runtime language switcher. The initial implementation covers English and one additional language (e.g., German). The application uses Angular 21 with standalone components, so the i18n approach should be compatible with this architecture.
Acceptance Criteria
- [ ] Two languages are supported: English and German
- [ ] A language selector is visible on all pages via the
navbarcomponent - [ ] Selecting a language immediately updates all visible text
- [ ] All navigation items, buttons, labels, headings, and form validation messages are translated
- [ ] No hardcoded user-facing strings remain in component templates
- [ ] The application defaults to English when no preference is set
- [ ] Language preference persists after page reload
- [ ] The Tailwind CSS layout handles longer translated strings without breakage (e.g., German text)