Peer-to-peer video and video conferencing are changing the way people communicate. Voice and text conversations are great but sometimes you really want to see the person on the other end of the conversation. The addition of facial expressions and visual context enhances the ways in which we can communicate. Video chat works best with a clean design that gets out of your way when you don’t need it. Building that design is what we’ll focus on in this post. We’ll start with the Twilio Video for iOS Swift Quickstart and make some design changes to make it function as a great peer-to-peer chat app.

Before we get started you’ll need to get the Twilio Video for iOS Swift Quickstart running since we’ll be using that as our starting point. You’ll need a free Twilio account and then it’ll just take a few minutes to get the quickstart running. Follow the steps on the quickstart page and you’ll do the following:

Download, extract, configure and start the token generator server Download the Swift iOS quickstart and run it in the Simulator

It should look like this if you have everything set up correctly:



I’ll wait here while you get this set up:



See? That wasn’t so hard. Now that you’re back, here’s a look at what we’re going to build in this post:

Getting Set Up

Now that you’ve gone through the Quickstart let’s take a look at what you have running already:

Video Configuration Profile set up through Twilio

Backend application for obtaining access tokens

Swift iOS application that requests a token from the backend and connects to Twilio Video with a randomly generated username. The app can receive and make invitation requests to start a conversation.

The code in this post was written using:

Xcode 7.2.1

Swift 2.1

iOS 8.1 and up