Sign In with Email and Password is enabled by default on all projects.

Sign Up

To Sign Up a new user, use signUp with a valid email and password.

await nhost.auth.signUp({
  email: 'joe@example.com',
  password: 'secret-password'
})
When email verification is enabled, a newly registered user will receive an email with a link they must follow in order to verify the email address

Sign In

After a user is registered, and optionally verified, it is able to Sign In.

await nhost.auth.signIn({
  email: 'joe@example.com',
  password: 'secret-password'
})

Email Verification

By default, newly registered users will receive an email with a verification link they must follow before they can Sign In.

To change this setting, navigate to Settings -> Sign-In Methods -> Email and Password and set Require Verified Emails.

It is possible to manually send the verification email to a user with sendVerificationEmail().

await nhost.auth.sendVerificationEmail({
  email: 'joe@example.com',
  password: 'secret-password'
})
It is possible to customize these automatic emails, learn how to here