Skip to content

Conversation

@mircealungu
Copy link
Member

Summary

  • Add getDailyStreak() API wrapper to fetch streak from backend
  • Replace client-side calculateConsecutivePracticeDays() with backend-provided daily_streak in UserDashboard
  • Depends on backend PR: Add backend-maintained daily streak api#471

Test plan

  • Verify streak displays correctly in TopBar, SideNav, StreakBanner, and Dashboard
  • Verify streak updates after page refresh (reads from backend)

🤖 Generated with Claude Code

@netlify
Copy link

netlify bot commented Jan 28, 2026

Deploy Preview for voluble-nougat-015dd1 ready!

Name Link
🔨 Latest commit 9f85235
🔍 Latest deploy log https://app.netlify.com/projects/voluble-nougat-015dd1/deploys/6979fd3e6284030007173da1
😎 Deploy Preview https://deploy-preview-868--voluble-nougat-015dd1.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@mircealungu mircealungu force-pushed the feature/import-duolingo-streak branch from 25f9147 to 4a869c7 Compare January 28, 2026 08:43
- Add StreakBanner component for mobile streak display
- Add useStreakMilestone hook for streak milestone toasts
- Switch from weekly to daily streak tracking across all UI
- Fetch streak from backend API instead of calculating client-side
- Update ProgressContext, TopBar, SideNav, Dashboard, and summaries
- Add i18n strings and settings toggle for daily streak
- Extract DEFAULT_TOPBAR_PREFS to shared constant
- Fix undefined weeksPracticed variable in ArticlesProgressSummary
- Fix missing key props in list renders
- Remove stale console.log

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@mircealungu mircealungu force-pushed the feature/import-duolingo-streak branch from 4a869c7 to 4b00f56 Compare January 28, 2026 09:25
mircealungu and others added 2 commits January 28, 2026 11:45
- Remove dead calculateConsecutivePracticeDays/Weeks from progressHelpers
- Centralize streak fetch in ProgressContext instead of 5 separate components
- Swap App.js provider nesting so ProgressProvider can access APIContext
- Fix parameter name mismatch in getArticlesProgressSummary (weeklyMinutesRead)
- Fix articlesProgressSummary array using raw number instead of formatted object
- Add i18n strings for StreakBanner and milestone toasts (EN + DA)
- Remove dead whichItems state from TopBar
- Remove conflicting useEffect from TopbarIconPreferences
- Remove stale console.log from TopbarIconPreferences
- Change daysPracticed initial value to null with null guard in getDailyStreak

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Change the weekly progress metric from "distinct words practiced" to
"total exercises completed" for a more motivating and accurate count.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@mircealungu mircealungu merged commit 353ebc8 into master Jan 28, 2026
4 checks passed
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.

2 participants