iOS Passwordless Chat Application with Auth0
Blog post from Stream
An iOS chat application is developed using Stream Chat for its chat components and Auth0 for passwordless authentication, avoiding the traditional username and password method. This approach involves sending a one-time PIN through a user-owned channel like email or phone, which, upon correct entry, grants user access. The project requires accounts with Stream, Auth0, and Ngrok, as well as Xcode, NodeJS, and Ngrok installations. The process involves setting up passwordless authentication on Auth0, configuring a backend using NodeJS to generate Stream JWTs, and employing Ngrok to expose the local backend via HTTPS. The iOS project integrates with Stream Chat and Auth0 using Swift Package Manager or CocoaPods and includes functions to fetch JWTs and set up the chat UI. The authentication interface uses Auth0's Lock.swift SDK, leading to a seamless transition to the chat interface upon successful OTP entry. The project is tested by receiving an email code, inputting it, and accessing the chat feature, providing a foundation for further experimentation and development with passwordless authentication.