# Authentication ## Purpose Define user login and registration. --- # Supported Methods Users should be able to: ## Email Registration Create account using: - Email. - Password. - Confirmation. --- ## OAuth Registration/Login Support: - Google. - Microsoft. --- # Expected Behaviour If OAuth user does not exist: Create account automatically. Example: User clicks: "Continue with Google" ↓ Authenticate ↓ No account exists ↓ Create account ↓ Login --- # Password Requirements Support: - Secure hashing. - Password reset. - Password change. --- # Authentication UX Users should have: - Clear errors. - Loading states. - Recovery options. Avoid: "Authentication failed" without explanation.