
Create a Twilio account and verify email and phone, then install and initialize the Twilio CLI, set up a profile, and configure an API key and token for your project.
Install the Tulasi serverless plugin and the studio plugin to enable serverless functions, then create services and add JavaScript functions within Studio.
Initialize a new serverless function, configure environment credentials securely, set up public and private assets, run and deploy to Twilio, and expose endpoints for a video call app.
Clean up the serverless function workspace, clear assets and functions, and install packages to prepare the Twilio video call app with React and add the API key and secret.
Create a serverless function to generate a video access token for a Twilio video chat, using account context, API keys and environment variables, then deploy and test with Thulium.
Add identity and a room video grant to the access token using the event's room name, then attach the grant and test the video chat flow.
Shows updating a JWT by sending identity and room via Postman, using a json body to generate a new token, and gating video chat access on the front end.
Initialize a new React app for the video call project, build the app, and locate the build folder to prepare assets for the video call site.
Build and deploy a React app to Twilio serverless functions by building, copying assets into the assets folder for the video call, and deploying with serverless commands.
Create your first React component, install Axios and Twilio Video, and manage token-based identity and room selection with a serverless function to fetch credentials.
Create a sign-in form with name and room fields in a React component, wiring useState for both, and prepare to request a token from the backend.
Initialize the input state to a blank space to prevent undefined errors when typing in a controlled component. Refresh to verify no errors and continue entering values.
Use Axios to post form data (name and room) to a serverless function, receive an access token, and store it for signing in.
Fix cors issues from localhost by configuring access-control headers (origin, methods, content-type) in a serverless Twilio video call app built with React, then deploy to live functions.
Learn to build a React video call component that connects to Twilio, using useRef and useEffect to render local and remote video streams, token handling, and room management.
Attach the local video feed in a serverless Twilio video call app with React by creating and subscribing to a video track and rendering it on screen.
Register for the participant connected event, fetch existing and new participants in the room, and attach remote tracks from publications to update the ui as others join.
Deploy a serverless video call app to Twilio by cleaning the assets, building, and deploying functions and assets, then access the deployed chat url.
Fix race condition by reattaching tracks after initial attachment and handling track subscribed events, enabling seamless use of multiple cameras and microphones in a Twilio video room.
Implement a participant disconnected handler to remove room members when they unsubscribe. Create a paintChild function that builds an element with the participant's identity and attaches the remote video track.
Remove disconnected users by implementing a remove participant function that locates a participant by identity and detaches their DOM element from the room in a React Twilio video app.
Deploy the final version of the serverless Twilio video call app with React, verify live browser and mobile access, enable cameras and microphones, and test disconnection handling.
Install VSCode modules and extensions to streamline React development for a serverless Twilio video app, including material icons, auto imports, rename tag, code formatting, and useful snippets.
Learn to configure VSCode with Prettier, enable format on save, and set single-quote style to auto format and apply consistent code styling across edits.
Discover how to speed up coding with Emmet in VS Code by enabling it for JavaScript React, using dot notation for classes, and quick element and text expansions.
Install Chrome extensions for development by adding React development tools and Redux, then pin them for easy access while exploring a React and Redux workflow.
Install the docker extension and work with docker files, using a popular image with 5.1 million downloads. Leverage error checks and autocomplete to fix issues and accelerate development.
Log into a MongoDB instance inside Docker using Compass, use the internal Docker network rather than localhost, and access the todo database and its documents.
Learn how to edit and update documents in MongoDB Compass, copy and clone documents, delete entries, and drop collections or databases, with changes re-created when you restart your app.
Set up your serverless Twilio React development environment by installing a stable Node version (12.18.3), Chrome Canary, Visual Studio Code Insiders, and Yarn for fast package management.
Install brew on Mac to set up a package manager; compare with Windows Chocolatey, then paste the install command in terminal and enter your password.
Install Deno and Denon on Mac or Windows using terminal, Chocolatey, and upgrade to the latest versions, then enable automatic server restarts on file save for streamlined development.
Download Docker Desktop for macOS or Windows and follow the on-screen prompts to install. Open the terminal and verify Docker is running using Docker commands.
Install Postman to send API requests for development and testing the backend; download and install on Windows, follow prompts, set preferences, and enable direct mode.
Twilio the world's leading cloud communications platform as a service (CPaaS) that enables you to develop solutions for SMS, WhatsApp, Voice, Video, email, and even IoT. Twilio powers communications for more than 190,000 businesses, and enables nearly 932 billion human interactions every year.
In this course, we will leverage some of those capabilities to create a fully functional Video Conference app leveraging Twilio Video Call capabilities and Twilio serverless function to create a fully functional React Video Conference App without the need of any extra services.
In this course we will learn about:
Programmable Video is a cloud platform that allows developers to add video and audio chat to Web, Android and iOS applications. The platform provides REST APIs, SDKs, and helper tools that make it simple to capture, distribute, record, and render high-quality audio, video, and screen shares. Twilio Programmable Video has been built on WebRTC.
Other important details:
Twilio Functions replaces your need to find hosting or stand up a server to serve TwiML or any other HTTP based responses. With Functions, you no longer have to worry about maintaining or scaling web infrastructure - it's all managed seamlessly by Twilio, scaling with your use case.
Other important details:
Frontend:
We will create the front end in React using hooks, such as useState, useEffect, useContext, useCallback among many other custom hooks we will create, to make our application look amazing we will use Semantic UI and to help with the state management we will use Immet
Serverless Function:
Will be created using NodeJS, we will create a JWT token and add grants to it before responding to the front end app.