Redesign iOS onboarding UI with improved visuals and engagement

- Reorder flow: Welcome → Features → Name Residence → Account → Tasks → Upsell
- Features screen: 4 animated cards with stats, gradient icons, playful copy
- Name residence: Add name suggestions, gradient borders, encouraging text
- Task templates: Multi-select with 24 tasks in 6 categories, accordion UI
- Subscription upsell: Plan selection, animated crown, social proof, benefits

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Trey t
2025-12-02 11:49:55 -06:00
parent 0652908c20
commit d4b5da71b7
6 changed files with 1050 additions and 360 deletions

View File

@@ -101,11 +101,12 @@ struct OnboardingCoordinator: View {
}
/// Current step index for progress indicator (0-based)
/// Flow: Welcome Features Name Residence Create Account Verify Tasks Upsell
private var currentProgressStep: Int {
switch onboardingState.currentStep {
case .welcome: return 0
case .nameResidence: return 1
case .valueProps: return 2
case .valueProps: return 1
case .nameResidence: return 2
case .createAccount: return 3
case .verifyEmail: return 4
case .joinResidence: return 4
@@ -145,16 +146,17 @@ struct OnboardingCoordinator: View {
}
private func handleBack() {
// Flow: Welcome Features Name Residence Create Account Verify Tasks Upsell
switch onboardingState.currentStep {
case .nameResidence:
goBack(to: .welcome)
case .valueProps:
goBack(to: .nameResidence)
goBack(to: .welcome)
case .nameResidence:
goBack(to: .valueProps)
case .createAccount:
if onboardingState.userIntent == .joinExisting {
goBack(to: .welcome)
} else {
goBack(to: .valueProps)
goBack(to: .nameResidence)
}
case .verifyEmail:
AuthenticationManager.shared.logout()