Sign-In
The Sign-In module provides a complete authentication solution with support for email/password login and social authentication (Google, Apple). It includes form validation, error handling, and customizable UI components.
Overview
The Sign-In module is built using a compound component pattern, allowing for maximum flexibility and customization while maintaining consistency across your application.
Key Features
- Email/Password Authentication: Built-in form with validation
- Social Login: Google and Apple authentication support
- Customizable UI: Theme-aware components with style override capabilities
- Form Validation: Yup-based validation with custom validation support
- Responsive Design: Adapts to different screen sizes and orientations
- Accessibility: Native input and button props are available for host-provided labels and semantics; add any screen-reader announcements required by the app.
- TypeScript: Full type safety throughout
Components
- SignIn - Main container component
- SignIn.Header - Header section with title and description
- SignIn.Header.Title - Title text component
- SignIn.Header.Description - Description text component
- SignIn.EmailForm - Email/password form components
- SignIn.EmailForm.Inputs - Email and password inputs
- SignIn.EmailForm.SigninButton - Submit button
- SignIn.EmailForm.ForgotPassword - Forgot password link
- SignIn.EmailForm.Spacing - Layout spacing component
SignIn.EmailForm.MfaCode- One-time code input rendered for MFA responses
- SignIn.SocialLogins - Social authentication components
- SignIn.SocialLogins.GoogleLogin - Google authentication
- SignIn.SocialLogins.AppleLogin - Apple authentication
- SignIn.LoginWithSeparator - Visual separator
- SignIn.Footer - Footer section
When the default client login returns an MFA step, SignIn.EmailForm.Inputs renders
SignIn.EmailForm.MfaCode, with one-time-code autofill and a Done action that calls
the returned verification function. Custom onSubmit flows own their own MFA behavior.
Practitioner MFA requires a core release that understands the MFA step response; older
core versions can try to finish the login without presenting the code step. Pin and test
the compatible @ovok/core version when enabling MFA.
Related Components
- Register - User registration component
- Reset Password - Password reset functionality
- Logout Button - User logout functionality