Deploy your own video collaboration app in five minutes or less
Time to read: 3 minutes
Today we are excited to announce that we are open sourcing three video collaboration applications, one for iOS, one for Android, and a ReactJS one for the Web. Whether you are building a healthcare, education, or general video collaboration solution, these apps can accelerate development by providing you with a fully functioning video app that can be deployed to the cloud in minutes. In addition, they provide a canonical reference for developers building out their communication solutions by showcasing the Programmable Video capabilities. These applications are available today on Github under the Apache 2.0 license:
- Web - https://github.com/twilio/twilio-video-app-react
- iOS - https://github.com/twilio/twilio-video-app-ios
- Android - https://github.com/twilio/twilio-video-app-android
At Twilio we strive to build a reliable, extensible platform so that our customers can build high quality communication experiences in their applications. Our Video SDKs provide the API building blocks for mobile and web developers to create custom communications experiences in their apps. We believe we can help our customers build better communications apps by producing these fully featured reference apps.
Above image shows how the open source app renders across desktop, iPhone, and Android.
Open Source Video Apps
Our team began implementing these applications as an internal means to exercise and validate the Programmable Video APIs. Over the years, we have found that the implementation and daily use of these applications provide valuable feedback for building a better Video platform. Additionally, we believe these applications can be helpful to developers embarking on building or enhancing their own Programmable Video apps. These apps are intended to accelerate development, provide a full reference of Programmable Video, and demonstrate best practices with easy-to-read code.
How is this different from a Quickstart?
Twilio uses quickstarts as a means to introduce developers to our Programmable Video SDKs. The quickstarts provide a simple and quick way for developers to build a reference app and familiarize themselves with the different capabilities of the platform with a minimal amount of code.
In contrast, the purpose of these open source apps is to provide a more comprehensive demonstration of Programmable Video features such as:
- Connecting to a Room and publishing audio & video tracks
- Screen sharing between participants
- Defining participant bandwidth usage with Network Bandwidth Profile API
- Monitoring network conditions with Network Quality API
Getting Started
These applications leverage a new Twilio CLI RTC plugin which supports quickly developing and deploying real-time communication applications using the Twilio Runtime. You can go from exploring an application’s source code to trying it out for yourself in five steps. The snippet belows shows an example of how to deploy the web application.
Check out this video to see how to deploy the three apps, iOS, Android, and ReactJS, in under five minutes.
For additional getting started details or information about the applications you can check out each of the projects below. Note in this sample app the generated url and passcode expire after one week. To securely manage your users you can update the provided Access Token server or host your own. See our documentation here on how to manage your own Access Token server.
Web
The web application is written in React. You can get started using the project README and we invite you to provide your feedback if you encounter any issues.
iOS
The iOS application is written in Swift and ObjC, but our team is in the process of migrating to Swift. You can get started using the project README and we invite you to provide your feedback if you encounter any issues.
Android
The Android application is written in Java and Kotlin, but our team is in the process of migrating to Kotlin and incorporating Google’s App architecture guidelines. You can get started using the project README and we invite you to provide your feedback if you encounter any issues.
RTC Plugin
The Twilio RTC plugin is a Twilio CLI plugin created to help developers develop and deploy real-time communication applications. This plugin presents a new approach to getting started with Twilio Voice and Video and we welcome your feedback!
Wrapping Up and Looking Ahead
At Twilio we strive to wear the customer’s shoes as a means to understand our customer challenges and guide us toward building a better platform. We believe these open source reference apps will help accelerate developers as they build the next generation of video experiences for healthcare, education, collaboration, and more. We look forward to collaborating and can’t wait to see what you build with Programmable Video!
Related Posts
Related Resources
Twilio Docs
From APIs to SDKs to sample apps
API reference documentation, SDKs, helper libraries, quickstarts, and tutorials for your language and platform.
Resource Center
The latest ebooks, industry reports, and webinars
Learn from customer engagement experts to improve your own communication.
Ahoy
Twilio's developer community hub
Best practices, code samples, and inspiration to build communications and digital engagement experiences.