- Complete login screen with email/password authentication form
- Integrated AuthForm widget for consistent form handling
- Added forgot password placeholder functionality
- Sign up navigation to registration screen
- Loading states during authentication process
- Responsive design with SafeArea and centered layout
- App icon and welcome messaging
- Error handling for invalid credentials
Ready for authentication logic integration.
- AuthButton widget with loading states and variants (primary, secondary, outline)
- AuthForm widget with email/password fields and real-time validation
- Password visibility toggle functionality
- Responsive design with proper accessibility labels
- Form validation for email format and password strength
Components ready for use in login/signup pages.
- Fixed import path in AuthRepository to reach core errors
- Updated AuthUser.fromSupabase() to handle DateTime parsing safely
- Added UnknownAuthException for fallback error handling
- Fixed null-aware operators in AuthUser model
- All authentication files now compile without errors
- Updated main.dart with proper Supabase initialization
- Added environment loading with error handling
- Replaced default Flutter template with Sage app
- Created simple HomePage with Supabase connection status
- Used debugPrint instead of print for production compliance
- Created .env template with SUPABASE_URL and SUPABASE_ANON_KEY placeholders
- Added .env to .gitignore to prevent committing secrets
- Created SupabaseConstants class with secure environment loading
- Added validation to ensure required environment variables are set
- Created core/constants directory structure