Inspiration

People spend hours swiping left and right on Tinder without any tangible results. Dive uses the power of realtime video streaming to bring people closer to each other, either for dating or any other social occasion and helps them build real and long lasting relationships.

What it does

It connects two strangers together and lets them have a discussion for a maximum of 5 minutes before they decide to meet each other in real life.

How I built it

Almost all realtime applications are build using sockets and network connections, and Dive, is not an exception. I built the iOS app using Swift and used Python on the server to create workers and manage sockets and their authentication. I also used AWS and Twilio to bypass the security restrictions involved with local networks while streaming.

Challenges I ran into

The biggest challenge was bypassing the security measures of local network to be able to test the application in the first place. After that, increasing the speed and quality of the stream were challenging, but interesting parts of the project.

Accomplishments that I'm proud of

While all the technologies used in Dive, are OpenSource or public knowledge, what makes it unique is its light stack and multiprocessing capabilities, which enables a nano sized computer (almost smaller than Raspberry Pi) with shared resources to handle up to 6 streams on one communication channel.

What I learned

I learned a lot about networks and asynchronous task processing.

What's next for Dive

I'll be testing the streaming technology at a scale with real people on the platform talking to one another.

Built With

Share this project:

Updates