mirror of
https://github.com/Dvorinka/1356.git
synced 2026-06-04 12:02:56 +00:00
Initial commit: Project documentation and git setup
This commit is contained in:
+299
@@ -0,0 +1,299 @@
|
||||
# LifeTimer Development Timeline
|
||||
|
||||
Use this file as a living log of what has been done and what is planned next.
|
||||
Update it as you work.
|
||||
|
||||
Legend
|
||||
|
||||
- [ ] planned
|
||||
- [x] completed
|
||||
- [~] in progress
|
||||
|
||||
## 2026 01 03 - Kickoff
|
||||
|
||||
- [x] Defined core concept and Supabase based architecture in project.md.
|
||||
- [x] Created initial documentation set for requirements, design, architecture, and roadmap.
|
||||
- [x] Created comprehensive functional and non-functional requirements.
|
||||
- [x] Defined detailed database schema with RLS policies.
|
||||
- [x] Specified Flutter project structure and navigation flows.
|
||||
- [x] Documented UI/UX specifications and security guidelines.
|
||||
- [ ] Initialize git repository and create .gitignore.
|
||||
- [ ] Review and complete Flutter project structure.
|
||||
- [ ] Add required dependencies to pubspec.yaml.
|
||||
- [ ] Create core theme and routing files.
|
||||
|
||||
## Phase 0 - Planning and Foundations (In Progress)
|
||||
|
||||
### Project Setup
|
||||
- [ ] Initialize git repository with proper .gitignore
|
||||
- [ ] Create initial commit with documentation
|
||||
- [ ] Review existing Flutter project structure in lifetimer/
|
||||
- [ ] Verify pubspec.yaml and update dependencies
|
||||
- [ ] Create environment configuration files (.env.example, .env)
|
||||
|
||||
### Core Infrastructure
|
||||
- [ ] Create bootstrap folder with Supabase client setup
|
||||
- [ ] Create core theme definitions (light/dark themes)
|
||||
- [ ] Create app router with all route definitions
|
||||
- [ ] Create reusable core widgets (buttons, scaffolds, loading indicators)
|
||||
- [ ] Create error handling and failure types
|
||||
- [ ] Create utility functions (date/time, validators)
|
||||
- [ ] Set up state management (Provider/Riverpod)
|
||||
|
||||
### Data Layer
|
||||
- [ ] Create data models (User, Goal, GoalStep, Activity)
|
||||
- [ ] Create repository interfaces
|
||||
- [ ] Implement AuthRepository
|
||||
- [ ] Implement UserRepository
|
||||
- [ ] Implement GoalsRepository
|
||||
- [ ] Implement CountdownRepository
|
||||
- [ ] Implement SocialRepository (Phase 2)
|
||||
- [ ] Implement NotificationsRepository
|
||||
|
||||
### Supabase Setup
|
||||
- [ ] Create Supabase project
|
||||
- [ ] Apply database schema migrations
|
||||
- [ ] Configure RLS policies
|
||||
- [ ] Set up storage buckets
|
||||
- [ ] Configure authentication providers (Google, Apple)
|
||||
- [ ] Test database connections
|
||||
|
||||
## Phase 1 - MVP Core Experience
|
||||
|
||||
### Authentication Feature
|
||||
- [ ] Create AuthGate screen
|
||||
- [ ] Create sign in screen (email/password)
|
||||
- [ ] Create sign up screen (email/password)
|
||||
- [ ] Implement Google sign-in
|
||||
- [ ] Implement Apple sign-in (iOS)
|
||||
- [ ] Create auth loading screen
|
||||
- [ ] Implement AuthController
|
||||
- [ ] Add session management
|
||||
- [ ] Test auth flows
|
||||
|
||||
### Onboarding Feature
|
||||
- [ ] Create onboarding intro screen
|
||||
- [ ] Create onboarding how it works screen
|
||||
- [ ] Create onboarding motivation screen
|
||||
- [ ] Implement OnboardingController
|
||||
- [ ] Add onboarding completion tracking
|
||||
- [ ] Test onboarding flow
|
||||
|
||||
### Profile Setup
|
||||
- [ ] Create profile creation screen
|
||||
- [ ] Implement avatar upload
|
||||
- [ ] Add username validation (unique check)
|
||||
- [ ] Add bio field
|
||||
- [ ] Test profile setup flow
|
||||
|
||||
### Goals Feature
|
||||
- [ ] Create goals list screen
|
||||
- [ ] Create goal edit screen
|
||||
- [ ] Create goal detail screen
|
||||
- [ ] Implement GoalsController
|
||||
- [ ] Implement GoalDetailController
|
||||
- [ ] Add goal title and description fields
|
||||
- [ ] Add location picker integration
|
||||
- [ ] Add image upload/API integration
|
||||
- [ ] Implement milestones/steps per goal
|
||||
- [ ] Add progress tracking (0-100%)
|
||||
- [ ] Enforce 1-20 goals limit
|
||||
- [ ] Add goal completion logic
|
||||
- [ ] Test goal CRUD operations
|
||||
|
||||
### Countdown Feature
|
||||
- [ ] Create home countdown screen (world time inspired)
|
||||
- [ ] Implement large countdown display (days, hours, minutes, seconds)
|
||||
- [ ] Add progress ring/bar showing time elapsed
|
||||
- [ ] Implement CountdownController
|
||||
- [ ] Add countdown start confirmation dialog
|
||||
- [ ] Calculate countdown end date (start + 1356 days)
|
||||
- [ ] Add motivational messages
|
||||
- [ ] Test countdown accuracy
|
||||
- [ ] Test countdown lock (no pause/reset)
|
||||
|
||||
### Bucket List Confirmation
|
||||
- [ ] Create bucket list intro screen
|
||||
- [ ] Implement confirmation dialog
|
||||
- [ ] Add countdown start trigger
|
||||
- [ ] Lock goals after countdown starts
|
||||
- [ ] Test confirmation flow
|
||||
|
||||
### Notifications
|
||||
- [ ] Set up local notifications
|
||||
- [ ] Implement daily/weekly reminders
|
||||
- [ ] Add milestone notifications
|
||||
- [ ] Add countdown checkpoint notifications (50%, 25% remaining)
|
||||
- [ ] Create notification settings screen
|
||||
- [ ] Test notification delivery
|
||||
|
||||
### Analytics
|
||||
- [ ] Set up basic analytics tracking
|
||||
- [ ] Track key events (goal creation, countdown start, goal completion)
|
||||
- [ ] Add error logging
|
||||
- [ ] Test analytics integration
|
||||
|
||||
### MVP Testing
|
||||
- [ ] End-to-end testing of signup → goals → countdown flow
|
||||
- [ ] Test onboarding completion
|
||||
- [ ] Test countdown accuracy over time
|
||||
- [ ] Test goal progress tracking
|
||||
- [ ] Test notifications
|
||||
- [ ] Fix critical bugs
|
||||
- [ ] Prepare for internal testing
|
||||
|
||||
## Phase 2 - Social and Motivation
|
||||
|
||||
### Following System
|
||||
- [ ] Implement follow/unfollow functionality
|
||||
- [ ] Create public profile screens
|
||||
- [ ] Add follower/following lists
|
||||
- [ ] Test follow relationships
|
||||
|
||||
### Activity Feed
|
||||
- [ ] Create social feed screen
|
||||
- [ ] Implement activity tracking
|
||||
- [ ] Show public milestones in feed
|
||||
- [ ] Add feed filtering
|
||||
- [ ] Test feed updates
|
||||
|
||||
### Leaderboards
|
||||
- [ ] Create leaderboards screen
|
||||
- [ ] Implement goals completed ranking
|
||||
- [ ] Implement active streak ranking
|
||||
- [ ] Implement recent milestones ranking
|
||||
- [ ] Add leaderboard tabs/filters
|
||||
- [ ] Test leaderboard accuracy
|
||||
|
||||
### Achievements
|
||||
- [ ] Design achievement badges
|
||||
- [ ] Implement achievement tracking
|
||||
- [ ] Create achievement notification
|
||||
- [ ] Add achievements to profile
|
||||
- [ ] Test achievement unlocks
|
||||
|
||||
### Social Notifications
|
||||
- [ ] Add follow notifications
|
||||
- [ ] Add milestone share notifications
|
||||
- [ ] Test social notification delivery
|
||||
|
||||
### Phase 2 Testing
|
||||
- [ ] Test public profile visibility
|
||||
- [ ] Test social feed privacy
|
||||
- [ ] Test leaderboards (public accounts only)
|
||||
- [ ] Test achievements
|
||||
- [ ] Beta testing with small group
|
||||
- [ ] Fix bugs and refine features
|
||||
|
||||
## Phase 3 - Advanced Experience
|
||||
|
||||
### Charts and Insights
|
||||
- [ ] Create insights screen
|
||||
- [ ] Implement progress vs time charts
|
||||
- [ ] Add goal completion trends
|
||||
- [ ] Implement streak visualization
|
||||
- [ ] Add summary cards
|
||||
- [ ] Test chart performance
|
||||
|
||||
### Image Integration
|
||||
- [ ] Integrate Unsplash API
|
||||
- [ ] Integrate Pexels API
|
||||
- [ ] Add image search by title
|
||||
- [ ] Cache images locally
|
||||
- [ ] Test image loading
|
||||
|
||||
### Map Integration
|
||||
- [ ] Integrate Google Maps API
|
||||
- [ ] Integrate OpenStreetMap (fallback)
|
||||
- [ ] Add location picker to goal edit
|
||||
- [ ] Display location on goal detail
|
||||
- [ ] Test map functionality
|
||||
|
||||
### Offline Support
|
||||
- [ ] Implement local caching (Hive/SharedPreferences)
|
||||
- [ ] Cache goals and countdown data
|
||||
- [ ] Queue offline mutations
|
||||
- [ ] Sync when connection restored
|
||||
- [ ] Test offline behavior
|
||||
|
||||
### Settings Expansion
|
||||
- [ ] Add theme switcher (light/dark)
|
||||
- [ ] Add time format toggle (12/24h)
|
||||
- [ ] Add language selection
|
||||
- [ ] Add privacy settings (public/private toggle)
|
||||
- [ ] Add account deletion
|
||||
- [ ] Test all settings
|
||||
|
||||
### Phase 3 Testing
|
||||
- [ ] Test charts accuracy
|
||||
- [ ] Test image API integration
|
||||
- [ ] Test map functionality
|
||||
- [ ] Test offline mode
|
||||
- [ ] Test all settings
|
||||
- [ ] Performance testing on low-end devices
|
||||
|
||||
## Phase 4 - Polish and Release
|
||||
|
||||
### Accessibility
|
||||
- [ ] Review color contrast ratios
|
||||
- [ ] Test with screen readers
|
||||
- [ ] Add semantic labels
|
||||
- [ ] Support dynamic text scaling
|
||||
- [ ] Fix accessibility issues
|
||||
|
||||
### Performance
|
||||
- [ ] Profile app performance
|
||||
- [ ] Optimize countdown updates
|
||||
- [ ] Optimize image loading
|
||||
- [ ] Reduce app bundle size
|
||||
- [ ] Test on low-end devices
|
||||
- [ ] Fix performance bottlenecks
|
||||
|
||||
### App Store Preparation
|
||||
- [ ] Create app store screenshots
|
||||
- [ ] Write app descriptions
|
||||
- [ ] Prepare app icons
|
||||
- [ ] Set up app store listings
|
||||
- [ ] Configure in-app purchases (if any)
|
||||
- [ ] Review store guidelines
|
||||
|
||||
### Play Store Preparation
|
||||
- [ ] Create Play Store screenshots
|
||||
- [ ] Write Play Store descriptions
|
||||
- [ ] Prepare app icons
|
||||
- [ ] Set up Play Store listing
|
||||
- [ ] Review Play Store policies
|
||||
|
||||
### Beta Testing
|
||||
- [ ] Set up beta testing program
|
||||
- [ ] Recruit beta testers
|
||||
- [ ] Collect feedback
|
||||
- [ ] Fix reported bugs
|
||||
- [ ] Refine features based on feedback
|
||||
|
||||
### Release Preparation
|
||||
- [ ] Final code review
|
||||
- [ ] Security audit
|
||||
- [ ] Create release notes
|
||||
- [ ] Tag release version
|
||||
- [ ] Deploy to production
|
||||
|
||||
### Public Launch
|
||||
- [ ] Submit to App Store
|
||||
- [ ] Submit to Play Store
|
||||
- [ ] Monitor app performance
|
||||
- [ ] Respond to user reviews
|
||||
- [ ] Plan post-launch updates
|
||||
|
||||
## Later Milestones
|
||||
|
||||
- [ ] MVP feature set complete and ready for internal testing
|
||||
- [ ] Social and leaderboards live in a small beta
|
||||
- [ ] Advanced charts, maps, and media features deployed
|
||||
- [ ] Public launch on both app stores
|
||||
- [ ] Post-launch feature updates and improvements
|
||||
|
||||
## Chronological History
|
||||
|
||||
- 2026 01 03 - [x] Project kickoff and documentation complete
|
||||
- 2026 01 03 - [~] Setting up git repository and project structure
|
||||
Reference in New Issue
Block a user