Description
Create the statistics screen that displays the free tier statistics to all users. This screen is accessed from the Statistics option on the Profile screen (from #137).
The free statistics screen shows:
- Total tasks created
- Total tasks completed
- Current streak (consecutive days with at least one task completed)
- Longest streak ever achieved
Below the free statistics, a premium-upsell section invites the user to subscribe to unlock additional statistics (completion rate, average tasks per day, most productive day, priority breakdown). Tapping the upsell CTA opens the RevenueCat paywall.
The visual design of this screen must be reviewed as part of the ticket to ensure layout, data visualization, and visual hierarchy are correct.
Depends on #150 (Statistics data layer), #130 (Premium gating infrastructure), #137 (Navigation redesign).
Scope
In scope: StatisticsScreen composable, StatisticsViewModel, displaying free statistics, premium upsell section with CTA that opens RevenueCat paywall, navigation from Profile screen, design review, and string resources.
Out of scope: premium statistics display (separate ticket #30).
Acceptance criteria
Description
Create the statistics screen that displays the free tier statistics to all users. This screen is accessed from the Statistics option on the Profile screen (from #137).
The free statistics screen shows:
Below the free statistics, a premium-upsell section invites the user to subscribe to unlock additional statistics (completion rate, average tasks per day, most productive day, priority breakdown). Tapping the upsell CTA opens the RevenueCat paywall.
The visual design of this screen must be reviewed as part of the ticket to ensure layout, data visualization, and visual hierarchy are correct.
Depends on #150 (Statistics data layer), #130 (Premium gating infrastructure), #137 (Navigation redesign).
Scope
In scope: StatisticsScreen composable, StatisticsViewModel, displaying free statistics, premium upsell section with CTA that opens RevenueCat paywall, navigation from Profile screen, design review, and string resources.
Out of scope: premium statistics display (separate ticket #30).
Acceptance criteria
WHEN the navigation occurs
THEN the Statistics screen is displayed
WHEN the screen renders
THEN it shows total tasks created, total tasks completed, current streak, and longest streak
WHEN the screen renders
THEN a premium-upsell section is shown below the free statistics
WHEN the action occurs
THEN the RevenueCat paywall is presented
WHEN the ticket is reviewed
THEN the design is explicitly reviewed for layout, data visualization, and visual hierarchy
WHEN the app renders the screen
THEN all visible text comes from string resources