Mobile: First-launch onboarding walkthrough (3 slides) #35
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
New users open the app and see Timmy's face staring at them with no context. There is no explanation of what Timmy is, why you need Lightning, or what the relay does. Drop-off at first launch is expected to be high without any onboarding.
What to build
A 3-slide onboarding flow that appears only on first launch (gated by an AsyncStorage
onboarding_completeflag):Slide 1 — Meet Timmy
Title: "Meet Timmy" | Body: "Timmy is an AI agent that lives in a 3D tower. Talk to him, give him jobs, and watch him work in real time." | Illustration: the TimmyFace component (large, animated).
Slide 2 — Pay with Lightning
Title: "Pay with Lightning" | Body: "Timmy runs on Bitcoin's Lightning Network. Each job costs a few sats — typically less than a cent. No accounts, no subscriptions." | Illustration: ⚡ lightning bolt graphic.
Slide 3 — Your Sovereign Relay
Title: "Your Own Relay" | Body: "Every message goes through a self-hosted Nostr relay. You own your data. No algorithms, no ads, no intermediaries." | Illustration: relay/node icon.
Swipe to advance. Skip button on slides 1–2. "Get Started" on slide 3.
Acceptance criteria
PR created: http://143.198.27.163:3000/replit/timmy-tower/pulls/79
Added a 3-slide swipeable onboarding walkthrough shown on first launch:
Uses AsyncStorage to persist completion so it only shows once. Users can swipe, tap Next, or Skip.