Files
1356/navigation-and-user-flows.md
T
2026-01-03 18:35:35 +01:00

7.2 KiB
Raw Blame History

LifeTimer — Navigation and User Flows

This document describes the main screens, navigation, and user journeys for the LifeTimer app.


1. Screen map and navigation

1.1 Global structure

  • Splash / Launch

    • Lightweight loading and environment check.
    • Determines whether to show onboarding or go directly to the app.
  • Onboarding flow

    • OnboardingIntro — explain the 1356day challenge concept.
    • OnboardingHowItWorks — steps: set 120 goals → lock list → 1356day countdown.
    • OnboardingMotivation — motivational examples, visuals.
    • Final screen leads to authentication.
  • Authentication

    • AuthChoice — sign up / log in buttons, Google and Apple options.
    • SignUpEmail — email + password registration.
    • SignInEmail — email + password login.
    • OAuthRedirect — transient screen while completing Google / Apple signin.
    • After auth, go to profile or home depending on completion state.
  • Profile setup (first time)

    • CreateProfile — avatar, username (unique), short bio.
    • Once done, proceed to bucket list intro.
  • Main app shell

    • Bottom navigation with 45 tabs:
      • Home — countdown and highlevel summary.
      • Goals — bucket list and goal management.
      • Social — feed, leaderboards (Phase 2+).
      • Profile — own profile, stats, settings entry.
      • Insights (optional) — charts and analytics (Phase 3).

The bottom nav is persistent after login; individual flows push screens on top of the tab stacks.


2. Core journey: new user to active countdown

2.1 First session flow

  1. Launch → Onboarding

    • SplashOnboardingIntro.
    • User swipes or taps Next through 23 explanatory screens.
    • Final onboarding screen CTA: Get startedAuthChoice.
  2. Authentication

    • Choose Sign up with email, Google, or Apple.
    • On success, navigate to CreateProfile.
  3. Profile setup

    • Enter avatar (optional), username (required, uniqueness validated), and short bio.
    • CTA ContinueBucketListIntro.
  4. Bucket list introduction

    • BucketListIntro explains rules:
      • You can create between 1 and 20 goals.
      • Countdown only starts when your list is finalized and you have at least one goal.
      • Once started, cannot be paused or reset.
    • CTA Start creating my listGoalsListEdit (empty state).
  5. Creating goals

    • GoalsListEdit (tab: Goals) shows empty state card: “No goals yet. Add your first goal”.
    • Tap Add goalGoalEdit screen.
  6. Goal edit flow

    • Fields: Title (required), Description, Location, Image, Milestones.
    • User can add milestones / steps.
    • CTA Save goal returns to GoalsListEdit.
    • User repeats Add goal until satisfied (up to 20; UI shows x / 20 goals created; the countdown start action becomes available once x ≥ 1).
  7. Confirming the bucket list

    • When user has created at least one goal, a prominent CTA appears: Finalize list and start 1356day challenge.
    • Tapping CTA opens ConfirmBucketListDialog:
      • Summary: number of goals, explanation of irreversible start.
      • Options:
        • Start countdown — sets countdown_start_date and countdown_end_date, navigates to HomeCountdown.
        • Review goals — returns to GoalsListEdit.
  8. First countdown view

    • HomeCountdown shows:
      • Very large remaining days (worldclock inspired layout).
      • Smaller breakdown: days, hours, minutes, seconds.
      • Progress ring or bar showing percentage of time elapsed.
      • Short motivational message.
    • Primary CTA: View my goals (to Goals tab).

2.2 If bucket list is not finalized

  • If a user leaves the app before finalizing:
    • On next login, Home shows “Your challenge hasnt started yet” with progress in creating goals (e.g., 5 / 20 goals completed) and a CTA to Finish my listGoalsListEdit.

3. Daily usage: updating progress

  1. User opens app.
  2. Splash quickly forwards to last state; for active users this is HomeCountdown.
  3. On HomeCountdown:
    • User sees remaining time and highlevel completion percentage across all goals.
    • CTA Update progressGoalsList.
  4. In GoalsList:
    • Each goal card shows title, image, small progress bar, and possibly remaining time highlight.
    • Tap a goal → GoalDetail.
  5. In GoalDetail:
    • User marks milestones as done or adjusts progress slider.
    • Optional note field for journalstyle comments.
    • CTA Mark goal as completed when all steps are done.
  6. On completion:
    • Show lightweight celebration overlay.
    • Offer Share to community if social features are enabled.

4. Social and community flows (Phase 2+)

4.1 Opting into sharing

  • From Profile or Settings > Privacy:
    • Global toggle Make my profile public (account visibility: Public / Private).
    • Optional privacy explanation sheet before first activation, explaining which data becomes visible.

4.2 Browsing the feed

  1. Tap Social tab.
  2. SocialFeed shows a list of public milestones and completed goals.
    • Cards: user avatar + name, goal title, completion date, days remaining.
  3. Tap a card → PublicMilestoneDetail.
  4. From PublicMilestoneDetail:
    • CTA Follow user → adds follower row.
    • View User profilePublicProfile.

Only users with Public accounts appear in the social feed or can be followed.

4.3 Leaderboards

  • From SocialFeed, user can switch tabs:
    • Feed, Leaderboards.
  • Leaderboards shows rankings (goals completed, streaks, etc.).
  • Tap an entry → PublicProfile.

Only users with Public accounts appear on leaderboards.


5. Settings and notifications

5.1 Accessing settings

  • From Profile tab, button SettingsSettingsHome.

5.2 Settings subsections

  • AccountSettings — email, password, delete account.
  • AppearanceSettings — light/dark, time format (12/24h).
  • NotificationSettings — reminder frequency, categories.
  • PrivacySettings — global public/private account visibility toggle and blocking.
  • AboutChallenge — reexplain rules and philosophy.

5.3 Notification flows

  • When user taps a push notification:
    • Reminder about time remaining → deep link to HomeCountdown.
    • Goal progress reminder → deep link to GoalDetail for that goal.
    • Social notification → deep link to SocialFeed or PublicMilestoneDetail.

6. Edge cases and empty states

  • No internet connection

    • Show cached countdown and goals with offline banner.
    • Disable actions that require network or queue them.
  • No goals yet (new user)

    • GoalsList shows illustrative empty state with CTA Add your first goal.
  • Countdown finished

    • HomeCountdown switches to a summary view:
      • “1356 days completed”
      • Stats: goals completed, streaks, favorite milestones.
      • CTA to review journey or share a reflection.

This document should be kept in sync with the UI spec and roadmap as features are added or removed.