iOS Passwordless Chat Application with Auth0
Almost every application needs an authentication strategy. The most common being the classic username and password combo. However, there’s a new approach some apps are taking to avoid handling or storing user passwords: passwordless authentication. It generally involves sending a one-time PIN (OTP) through a user-owned channel such as their phone or email. If the user inputs the correct PIN, we give them access to the system.
In this article, we’ll build an iOS chat application with Stream Chat, for its fully-featured iOS chat components and Auth0’s passwordless features for authentication.
You can see the final result in the screenshot below and download the complete source code in the Passwordless Chat App iOS GitHub repository. Let’s dive in!
Requirements
To follow this tutorial, create an account with Stream, Auth0, and Ngrok. You’ll also need Xcode, NodeJS, and Ngrok installed.
Stream takes care of the chat features, Auth0 provides the passwordless authentication we need, and Ngrok lets us quickly expose our local NodeJS backend to the external world via HTTPS.