This signup form with a custom API includes:
- An initial step that requires the full name, email and password.
- A flow that checks if the email is available.
- A second step that requires the phone number.
- A flow that generates an OTP and sends it via SMS.
- A third step that requires the verification code.
- And last, a flow that verifies the OTP, creates the account and issues a token to automatically log the user in.