A gamified life countdown app where users create a bucket list and start an irreversible 1356-day journey to achieve their goals.
LifeTimer is a production-ready Flutter mobile application that helps users achieve their life goals through a focused 1356-day countdown challenge. Users create a bucket list of up to 20 goals, and once they start their countdown, it cannot be stopped, paused, or extended - creating real commitment and motivation.
Current Status: π Ready for Beta Testing & App Store Submission
Version: 1.0.0 (Pre-release)
Platform: iOS & Android
- π Secure Authentication - Email, Google, and Apple OAuth
- π Bucket List Creation - Up to 20 life goals with detailed tracking
- β° 1356-Day Countdown - Irreversible timer with real-time updates
- π Progress Tracking - Milestones, steps, and achievement system
- π€ Profile Management - Customizable profiles with avatars
- πΊοΈ Location Support - GPS and map integration for location-based goals
- πΌοΈ Image Integration - Upload photos or search Unsplash/Pexels
- π Analytics & Insights - Charts and progress visualization
- π Smart Notifications - Daily, weekly, and milestone reminders
- πΎ Offline Support - Full functionality with intelligent caching
- π¨ Customization - Light/dark themes, 12/24h formats
- π Public/Private Profiles - Control your privacy
- π± Social Feed - Share milestones and achievements
- π Leaderboards - Compete on goals completed and streaks
- π₯ Following System - Connect with other users
- π Achievements System - Earn badges for accomplishments
- Framework: Flutter 3.10+
- Language: Dart 3.0+
- State Management: Riverpod
- Navigation: Go Router
- UI Components: Material Design 3
- Provider: Supabase
- Database: PostgreSQL with RLS
- Authentication: Supabase Auth
- Storage: Supabase Storage
- Realtime: Supabase Realtime
flutter_riverpod- State managementsupabase_flutter- Backend integrationgo_router- Navigationfl_chart- Analytics chartscached_network_image- Image cachinggeolocator- Location servicesgoogle_maps_flutter- Mapsflutter_local_notifications- Notificationshive- Local storage
- Flutter SDK (>=3.10.0)
- Dart SDK (>=3.0.0)
- Supabase project
- Google Maps API key (optional)
- Unsplash/Pexels API keys (optional)
-
Clone the repository
git clone https://github.com/your-username/lifetimer.git cd lifetimer -
Install dependencies
flutter pub get
-
Set up environment variables
cp .env.example .env # Edit .env with your Supabase and API credentials -
Run the app
flutter run
SUPABASE_URL=your_supabase_url
SUPABASE_ANON_KEY=your_supabase_anon_key
GOOGLE_MAPS_API_KEY=your_google_maps_key
UNSPLASH_API_KEY=your_unsplash_key
PEXELS_API_KEY=your_pexels_keylib/
βββ main.dart # App entry point
βββ bootstrap/ # Initialization
βββ core/ # Cross-cutting concerns
β βββ theme/
β βββ routing/
β βββ widgets/
β βββ errors/
β βββ utils/
β βββ services/
βββ data/ # Data layer
β βββ models/
β βββ repositories/
β βββ services/
βββ features/ # Feature modules
βββ auth/
βββ onboarding/
βββ goals/
βββ countdown/
βββ social/
βββ profile/
βββ settings/
βββ analytics/
βββ achievements/
users- User profiles and countdown datagoals- Bucket list items with progressgoal_steps- Granular milestones for goalsfollowers- Social relationshipsactivities- Timeline events for feedsnotifications- Notification historyachievements- User achievement tracking
- Row Level Security (RLS) enabled on all tables
- Users can only access their own data
- Public profiles expose only non-sensitive fields
- GDPR and CCPA compliant
- β Unit tests for core utilities and models
- β Widget tests for all screens and components
- β Integration tests for end-to-end flows
- β All tests passing
# Run all tests
flutter test
# Run with coverage
flutter test --coverage- β Phase 0: Planning and foundations
- β Phase 1: MVP core experience
- β Phase 2: Social and motivation features
- β Phase 3: Advanced experience features
- β Phase 4: Polish and release preparation
- All core features implemented
- Comprehensive testing complete
- Documentation ready
- Beta testing phase starting
- App store submission preparation
- User Guide - Comprehensive user manual
- FAQ - Frequently asked questions
- Release Notes - v1.0.0 release information
- Developer Guide - Setup and contribution guide
- Security Audit Checklist
- Code Review Checklist
- Category: Productivity
- Age Rating: 4+
- Size: ~50MB
- Features: In-app purchases, social features
- Category: Productivity
- Content Rating: Everyone
- Size: ~45MB
- Features: In-app purchases, social features
We welcome contributions! Please see the Developer Guide for detailed guidelines.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new functionality
- Ensure all tests pass
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Email: support@lifetimer.app
- Twitter: @LifeTimerApp
- Discord: https://discord.gg/lifetimer
- Website: https://lifetimer.app
- Issues: GitHub Issues
- Home screen widgets
- Custom countdown durations
- Advanced analytics
- More achievement types
- Team challenges
- Goal templates
- Integration with calendar apps
- Apple Watch companion app
- Week 1: 1,000+ downloads, 4.5+ star rating, <1% crash rate
- Month 1: 5,000+ downloads, 4.5+ star rating, 40%+ Day 30 retention
- Year 1: 100,000+ downloads, 4.5+ star rating, 20%+ Day 90 retention
- Total Files: 80+ Dart files
- Lines of Code: ~15,000+
- Features: 10+ feature modules
- Screens: 20+ screens
- Test Coverage: Comprehensive
- Development Time: 4 phases completed
LifeTimer - Make every day count. Start your 1356-day journey today!