Add bio field and daily streak check-in for gamification

- User.Bio: a short (300 char) freeform profile bio, editable via
  PATCH /profile/bio, shown on discover cards and candidate detail (richer
  profiles beyond the fixed onboarding fields).
- User.StreakCount/LastActiveDate: POST /profile/checkin increments the
  streak on consecutive days, resets after a gap, no-ops if already
  checked in today. Backs a daily-return hook on the frontend.
This commit is contained in:
2026-09-20 12:26:06 +03:30
parent 1dc96e86fc
commit c8e6f80c51
9 changed files with 110 additions and 0 deletions
+2
View File
@@ -43,6 +43,8 @@ func toUserProfile(u *models.User) dto.UserProfile {
State: string(u.State),
BlockedReason: u.BlockedReason,
BlockedAt: u.BlockedAt,
Bio: u.Bio,
StreakCount: u.StreakCount,
}
if u.Gender != nil {
g := string(*u.Gender)