Description
The frontend has no Guided User Experience (onboarding) for new users. When a user connects their wallet for the first time, they are dropped into a blank dashboard with no guidance on how to register a meter, create a stream, or fund their gas buffer. First-time user experience is critical for adoption.
Onboarding gaps:
- No welcome wizard for first-time users
- No tooltip/beacon system to highlight features
- No sample/demo data mode for exploration
- No empty states with actionable CTAs
- No progress tracking showing onboarding completion
- No help/documentation links in context
- No FAQ/help page for common questions
- No tutorial mode with step-by-step guidance
- No video explainer or interactive demo integration
Technical Context & Impact
- Affected Components/Files:
src/components/onboarding/ (missing), app/onboarding/ (missing)
- Impact: High churn rate for new users; users don't understand product value
Step-by-Step Implementation Guide
- Create onboarding wizard:
app/onboarding/page.tsx:
- Step 1: Connect Wallet - verify Freighter/other wallet is installed
- Step 2: Create Your First Meter - guide to register a meter
- Step 3: Fund Gas Buffer - explain gas buffer and guide top-up
- Step 4: Explore Dashboard - overview of key features
- Progress bar showing completion percentage
- Skip button for experienced users
- Implement beacon/tooltip system:
src/components/onboarding/Beacon.tsx:
- Highlight elements with pulsing animation
- Tooltip explaining what the element does
- "Got it" button to dismiss
- Sequential: one beacon at a time
- Store dismissed beacons in localStorage
- Create empty states: Each data view (meters, streams, billing) needs:
- Friendly illustration
- Explanation: "You haven't registered any meters yet"
- CTA button: "Register Your First Meter"
- Link to documentation
- Add help drawer:
src/components/help/HelpDrawer.tsx:
- Click "?" icon to open
- Searchable FAQ
- Quick links to documentation
- Report issue / contact support
- Keyboard shortcut:
? to toggle
- Create demo mode:
NEXT_PUBLIC_DEMO_MODE=true shows sample data for exploration without real wallet
- Add onboarding progress tracking:
src/lib/onboarding/store.ts tracking which steps completed
- Contextual help links: Each page has "Learn more" links to relevant docs
Verification & Testing Steps
- Connect wallet for first time -> onboarding wizard launches automatically
- Complete onboarding steps -> wizard dismisses -> dashboard shows with all features
- View empty meters page -> shows empty state with "Register Your First Meter" CTA
- Click beacon -> tooltip appears -> click "Got It" -> next beacon appears
- Open help drawer with
? -> search FAQ -> find relevant article
- Set demo mode -> verify all pages show realistic sample data
Description
The frontend has no Guided User Experience (onboarding) for new users. When a user connects their wallet for the first time, they are dropped into a blank dashboard with no guidance on how to register a meter, create a stream, or fund their gas buffer. First-time user experience is critical for adoption.
Onboarding gaps:
Technical Context & Impact
src/components/onboarding/(missing),app/onboarding/(missing)Step-by-Step Implementation Guide
app/onboarding/page.tsx:src/components/onboarding/Beacon.tsx:src/components/help/HelpDrawer.tsx:?to toggleNEXT_PUBLIC_DEMO_MODE=trueshows sample data for exploration without real walletsrc/lib/onboarding/store.tstracking which steps completedVerification & Testing Steps
?-> search FAQ -> find relevant article