Email + Password
Classic email and password sign-up and sign-in.
The default. Users sign up with an email and a password, then log in with the same.
Server config
To disable email signup but keep email login: leave emailAuth.enabled: true and set registration.enabled: false (or registration.requireInvitation: true).
Endpoints
| Method | Path | Purpose |
|---|---|---|
POST | /auth/signup | Create a user with { email, password, … } |
POST | /auth/login | Login with { providerName: 'email', credentials: { email, password } } |
Client call
React hook
Password policy
The library hashes with argon2id. Change the cost via password.argon2. Replace the algorithm entirely via password.hash / password.verify hooks (see Hooks Reference).
The library does not enforce a minimum password complexity. Add a registrationHooks.beforeSignup to reject weak passwords if you want that policy.
Forgot password
Three endpoints chain together:
POST /auth/forgot-password{ email }→ emitsPasswordResetRequestedEvent(your listener sends the OTP/link).POST /auth/verify-forgot-password-otp{ email, code }→ returns aresetToken.POST /auth/reset-password{ token, newPassword }→ emitsPasswordResetEvent.
See Sending Emails for the listener wiring.
Related
- Phone + Password.
- Email Verification — separate flow from login.
- Module reference.