Merged
Conversation
…yWorkouts component
…better user feedback
- Added i18n plugin for internationalization support. - Updated various components and pages to use translation keys for text. - Implemented locale persistence in local storage. - Refactored existing text strings to utilize translation functions. - Enhanced user experience by providing localized content in the UI.
…ng and toast notifications
…w with auto-login
…kout sessions are updated on finish
…t sessions, and localize week label
…rcise handling in AddGlobalExerciseList
…ice, and controller; update frontend to manage and display streak information
This was
linked to
issues
Jan 18, 2026
This was
unlinked from
issues
Jan 18, 2026
There was a problem hiding this comment.
Pull request overview
This pull request introduces a comprehensive internationalization system for the frontend (English and Swedish) and adds user workout streak tracking functionality to the backend. The changes include weekly workout goals, streak counting, and progress tracking, along with improved user account management supporting secure email and password updates.
Changes:
- Added complete i18n support with English and Swedish translations across the entire frontend application
- Implemented backend user streak tracking with weekly workout goals and progress monitoring
- Enhanced user account management with secure password changes and email validation
- Integrated exercise customization tracking with
isCustomizedproperty
Reviewed changes
Copilot reviewed 56 out of 57 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| backend/src/v1/user/user.entity.ts | Added streak tracking fields (weeklyWorkoutGoal, currentStreak, lastStreakCheckDate, currentWeekWorkouts) |
| backend/src/v1/user/user.service.ts | Implemented streak logic, password update with verification, and email validation |
| backend/src/v1/user/user.controller.ts | Added endpoints for streak info and weekly goal updates |
| backend/src/v1/workoutSession/* | Integrated streak updates on workout completion |
| backend/src/v1/exercise/exercise.service.ts | Added isCustomized property to exercise responses |
| frontend/src/plugins/i18n.ts | Created i18n plugin with locale detection and persistence |
| frontend/src/locales/en.ts, sv.ts | Added comprehensive translation files for English and Swedish |
| frontend/src/utils/exerciseDisplay.ts | Created utility functions for translating exercise names and descriptions |
| frontend/src/pages/Settings.vue | Completely redesigned with account editing, goals, and language selection |
| frontend/src/components/ProgressBar.vue | Reimplemented to show weekly progress and streak information |
| Multiple frontend files | Replaced hardcoded strings with i18n translation keys throughout |
Files not reviewed (1)
- frontend/package-lock.json: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a new user workout streak tracking feature to the backend, allowing users to set weekly workout goals, track their current streak, and view weekly progress. It also improves user account management by supporting secure email and password updates, and includes minor updates to exercise customization and development tooling.
Closes #31, #25
User streak tracking and weekly goals:
weeklyWorkoutGoal,currentStreak,lastStreakCheckDate,currentWeekWorkouts) to theUserentity and corresponding migration to support streak and weekly goal tracking. [1] [2]UserServiceto update streaks when workouts are completed, reset streaks based on weekly progress, retrieve streak info, and update weekly workout goals. [1] [2]UserControllerfor retrieving streak info (GET /user/streak) and updating weekly workout goals (PUT /user/weekly-goal).User account management improvements:
UpdateUserDtoto support email and password changes, including validation and secure password update logic inUserService(with current password verification and duplicate email checks). [1] [2]Exercise customization:
isCustomizedproperty toExerciseResponseDtoand ensured it is set inExerciseServiceresponses. [1] [2]Backend integration and dependencies:
WorkoutSessionServicetoUserServiceto update streaks when a workout session is completed, and updated module dependencies accordingly. [1] [2] [3] [4]Development tooling updates:
procpsto the backend Dockerfile for improved process management.