Skip to content

#126 — Re-triggers the Tour on Every Mount for Returning Users (No Dismiss Persistence) #903

Description

@Topmatrixmor2014

Labels: Official Campaign | FWC26 GrantFox OSS Maybe Rewarded frontend onboarding ux bug

This is a frontend issue for the GrantFox FWC26 campaign. Persist tour dismissal so returning users aren't re-greeted on every page load.

Requirements and Context

frontend/hooks/useOnboardingTour.ts:

  • The hook decides to show the tour based on the onboarding state; if a user dismisses the tour mid-way (or finishes it) the completion/dismissal may only be tracked in memory for the session, not persisted — so the tour re-appears on the next mount.
  • The tour also lacks a "don't show again" flag that survives across sessions; the existing onboardingState.ts only records step progress.

Objectives

  1. Persist a dismissed/completedAt flag in onboardingState.ts and have the hook skip the tour when set.
  2. Add a "Skip and don't show again" action on the tour.
  3. Add tests: dismissal persists; tour doesn't re-trigger on remount.

Suggested Execution

  1. Fork and branch: git checkout -b fix/onboarding-dismissal.
  2. Patch useOnboardingTour.ts + onboardingState.ts.
  3. Add tests; run npm run lint && npm run type-check && npm test in frontend/.

Acceptance Criteria

  • Dismissing the tour persists across reloads.
  • Returning users are not re-greeted.
  • ≥2 tests; npm run lint, npm run type-check, npm test pass.

Guidelines

  • Keep the tour accessible from settings even when dismissed.

Timeframe: 24 hours

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26Third CampaignCampaign: Third CampaignbugSomething isn't workingfrontendNext.js frontend issuesonboardinguxux

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions