Skip to content

Applicant in-app guides & interactive tours (with branded UI)#86

Merged
judedanbo merged 3 commits into
mainfrom
claude/applicant-guides-planning-aeetvf
Jun 22, 2026
Merged

Applicant in-app guides & interactive tours (with branded UI)#86
judedanbo merged 3 commits into
mainfrom
claude/applicant-guides-planning-aeetvf

Conversation

@judedanbo

Copy link
Copy Markdown
Owner

Summary

Builds out the applicant in-app help experience end-to-end — written guides, contextual "?" help, and interactive driver.js tours — then makes the tours discoverable and gives the whole guides/tours surface one cohesive, on-brand identity.

What's included

  • In-app guides for every applicant page/action — 12 new tours (login, register, verify-email, password-reset, accept-invite, edit-profile, declarations-list, account, notifications, preferences, verification-response, contact), contextual "?" panel entries, field tooltips, and the supporting [data-tour] anchors across the relevant pages.
  • Expanded getting-started tour — now walks the whole applicant dashboard top-to-bottom (verify email/phone, registration review, active declaration, verification lookups, quick actions, declarations overview, code history). Conditional steps self-skip via useTour's missing-element filter, so a verified applicant sees a lean tour and a new applicant sees the verification guidance.
  • Discoverable toursgetToursForRole() + a shared HelpTourList component surface a role's routed tours in two places: a collapsible "Guided tours" card on the dashboard and an "Interactive tours" section in the Help Centre Guides tab. Auth-page tours (/auth/*, unreachable while logged in) and routeless tours are filtered out.
  • Branded guides/tours UI (applied with the frontend-design skill), keyed off the existing theme tokens so it adapts across all five themes:
    • driver.js popovers themed via a scoped .adla-tour class — Ghana-green left rail, rounded, branded buttons, uppercase progress eyebrow.
    • HelpGuideSteps rebuilt as a "journey rail": green numbered nodes joined by a vertical spine, ending in a gold goal node.
    • Redesigned tour cards (icon tile, route-derived eyebrow, step pill); dashboard card chrome (compass icon + rotating chevron); Help Centre tours panel; EmptyState for the no-guides case; guide detail header + prominent "Start interactive tour" CTA; HelpSheet tour CTA promoted with differentiated Article/Guide link icons.

Verification

  • npm run lint clean, npx nuxi typecheck clean, 555 unit tests pass (incl. new getToursForRole coverage).
  • Browser-verified as an applicant: branded popovers in light and dark, dashboard "Guided tours" card launches tours, Help Centre Interactive-tours panel, journey-rail guide steps, responsive at mobile width.

Notes

  • No change to the auth/tour engine beyond a scoped popoverClass.
  • package-lock.json is intentionally left out (an unrelated local-npm regeneration that desyncs from the CI-generated lockfile).

🤖 Generated with Claude Code

claude and others added 3 commits June 22, 2026 11:45
Extend the existing driver.js + app/help guided-tour system to cover
every applicant-facing page and action, closing the gaps left by the
six pre-existing applicant tours.

New tours (app/help/tours.ts): login, register, verify-email,
password-reset, accept-invite, edit-profile, declarations-list,
account, notifications, preferences, verification-response, and
contact. The getting-started tour gains a phone-verification step.

Each new page gets [data-tour] anchors, a contextual "?" panel entry
with a tourId (so HelpSheet shows a "Start a tour" button), and field
tooltips where useful (account, preferences, contact). The applicant
onboarding checklist gains a "Verify your phone number" item, backed
by a new phoneVerified onboarding signal.

Tests: update help-lookup (profile/edit now has a specific contextual
entry that wins over the wildcard) and help-onboarding fixtures for the
new signal. All 548 unit tests pass; lint clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PTdS68WeCDsm6PE8iBNHtn
The getting-started tour stopped after the onboarding checklist and a
single phone-verify step, skipping the main body of the dashboard. Add
[data-tour] anchors and tour steps for the remaining sections so the
tour walks the whole page top-to-bottom: email verification, the
registration-review banner, the active-declaration hero, verification
lookups, quick actions, declarations overview and code history.

The four conditionally-rendered anchors (email/phone/registration/
active-declaration) reuse useTour's skip-when-missing behaviour, so a
verified applicant with no active declaration sees a lean tour while a
new applicant gets the verification guidance.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Make the interactive tours discoverable, then give the whole guides/tours
help experience one cohesive, on-brand identity.

Discoverability:
- Add getToursForRole() and a shared HelpTourList component.
- Surface a role's routed tours in two places: a collapsible "Guided tours"
  card on the applicant dashboard and an "Interactive tours" section in the
  Help Centre Guides tab. Auth-page and routeless tours are filtered out —
  they can't run from inside the authenticated app (the auth middleware
  redirects logged-in users away from /auth/*, and routeless tours only run
  on a specific declaration page).

Branded UI/UX pass (frontend-design), keyed off the existing theme tokens so
it adapts across all five themes:
- driver.js popovers themed via a scoped `.adla-tour` class — Ghana-green
  left rail, rounded, branded buttons, uppercase progress eyebrow.
- HelpGuideSteps rebuilt as a "journey rail": green numbered nodes joined by
  a vertical spine, ending in a gold goal node.
- Redesigned tour cards (icon tile, route-derived eyebrow, step pill).
- Dashboard card chrome (compass icon + rotating chevron, reduced-motion safe).
- Help Centre Interactive-tours panel; EmptyState used for the no-guides case.
- Guide detail page header + a prominent "Start interactive tour" CTA.
- HelpSheet: tour CTA promoted to the top; Article vs Guide links get
  distinct icons.

Tests: add getToursForRole coverage. 555 unit tests pass; lint and typecheck
clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Qaj3ngnngxfyJNF6kVQE7x
@judedanbo judedanbo merged commit 7bbfffd into main Jun 22, 2026
1 check passed
@judedanbo judedanbo deleted the claude/applicant-guides-planning-aeetvf branch June 22, 2026 13:26
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