Skip to content

feat(gui): sync milestone gamification with celebration popup and stats card#46

Merged
jorge-huxley merged 8 commits into
masterfrom
feat/gui-sync-milestone-gamification
Jul 7, 2026
Merged

feat(gui): sync milestone gamification with celebration popup and stats card#46
jorge-huxley merged 8 commits into
masterfrom
feat/gui-sync-milestone-gamification

Conversation

@jorge-huxley

Copy link
Copy Markdown
Owner

Summary

  • Track lifetime sync stats (activities + workouts) and persist them in GUI config, with milestone tracking so each threshold is only celebrated once.
  • Celebrate newly-crossed milestones with an animated popup: the sync count is the hero (pops in with a scale/fade), a brief confetti burst, milestone title, tuned achievement copy, and a gentle secondary Ko-fi line.
  • Redesign the lifetime-stats card on the main page as a bike-computer-style metric readout: big accent number with a LIFETIME SYNCS eyebrow, rank pill, activity/workout breakdown, and a goal gauge (Next milestone / N to go) over the progress bar.
  • Add unobtrusive Ko-fi support entry points (header button with confirm, card link) and remove the old About-dialog link.
  • Add an env-gated dev panel (INTERVALSSYNC_DEV_GAMIFICATION=1) to preview/reset milestones and stats.

Notes

  • Copy uses "syncs" instead of the internal "transfers" jargon on user-facing surfaces.
  • Confetti particles use ignore_interactions=True so they never block the dialog buttons.

Test plan

  • uv run pytest -q (offline; covers gamification logic + config persistence)
  • INTERVALSSYNC_DEV_GAMIFICATION=1 uv run intervalssync-gui -> use the dev panel to preview each milestone popup (confetti + number pop) and verify the stats card updates live after bumps/resets
  • Verify light/dark themes and mobile layout for the stats card and popup

jorge-huxley and others added 8 commits July 7, 2026 15:28
Track lifetime activity/workout uploads, show rank progress and milestone celebrations, and surface Ko-fi links in the header, About, and sync tab.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Show a support dialog from the header coffee icon so Ko-fi opens
only when the user chooses to proceed.

Co-authored-by: Cursor <cursoragent@cursor.com>
Place the lifetime stats card below the activity log and drop
celebration popups at 1 and 10 transfers.

Co-authored-by: Cursor <cursoragent@cursor.com>
Expose a sync-page dev panel when INTERVALSSYNC_DEV_GAMIFICATION=1
to simulate uploads, reset stats, and preview milestone popups.

Co-authored-by: Cursor <cursoragent@cursor.com>
Use clearer transfer-count wording and a softer Ko-fi ask in
milestone celebration dialogs.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@cursor

cursor Bot commented Jul 7, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@jorge-huxley
jorge-huxley merged commit f13320b into master Jul 7, 2026
1 check passed
@jorge-huxley
jorge-huxley deleted the feat/gui-sync-milestone-gamification branch July 7, 2026 22:43
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.

1 participant