egghead.io course notes

Build A Real-Time Video Chat App With Twilio And Gatsby With Jason Lengstorf

Episode Summary

Jason Lengstorf proves that you can get Dynamic in the JAMstack

Episode Notes

One of the things that is seen a lot in discussions around the JAMstack in general is this idea that you can't do anything dynamic in a static site. Jason Lengstorf disproves that notion in his course Build A Real-Time Video Chat App With Twilio And Gatsby where he'll show you not only how to integrate Twilio but also teach you the skills you need to include any dynamic third-party library into your Gatsby site!

Transcript

"Build A Real-Time Video Chat App With Twilio And Gatsby With Jason Lengstorf" Transcript

Episode Transcription

Taylor Bell: Hey Jason, thanks for meeting with me today.

Jason Lengstorf: Yeah, thanks for having me on.

Taylor Bell: Yeah. I wanted to talk to you about your new course about combining Twilio and Gatsby. So, what's the idea? Like, what are you doing with Twilio and Gatsby?

Jason Lengstorf: We're combining them.

Taylor Bell: Oh yeah. Classic.

Jason Lengstorf: No. So, I thought that ... One of the things that I've seen a lot in discussions around the JAMstack in general, like this idea of building the static sites, is a kind of a push back or a feeling that you can't do dynamic things with it. And so I thought, why not show the most dynamic thing, which is like real time video, right? Why not build a JAMstack site that handles that? And Twilio is just such an amazing service. They can do so much. I know you think ... Well, I don't know. Maybe not everybody, but I always thought like, "Oh, it's Twilio. They only do text messaging and voice call.

Jason Lengstorf: And then I met Nathaniel Chenwa on the Twilio team and he showed me this whole suite of services that they have that are really, really powerful. So I wanted to dig into how that live video chat works, and just show people how to build really, really dynamic and cool apps without the need for a whole bunch of backend servers and all these really complicated things. You can actually just build like a normal, you know, front end only website, a JAMstack site, and then add this really powerful front end only real time video capability using tools like Twilio.

Taylor Bell: Cool. And so over the course of your course-

Jason Lengstorf: Over the course of the course.

Taylor Bell: Yeah. During the course, what's the journey that you take the learner on?

Jason Lengstorf: So we're going to start by just building a basic Gatsby site and then we'll set up some kind of like very appy things. So, client only routes, we'll set up the ability to manage user authentication in a certain way. Not like real user authentication, but the idea of of protecting content until you have met some qualification. And then from there we will start looking at how the Twilio integration works. Along the way we're going to do some really fun stuff. Like, we get into React Context. We're going to write some custom hooks. We're going to use the use reducer pattern in React, which is really, really nice, as a way to get some of what Redux does without all of the weight and mental overhead of using full blown Redux.

Jason Lengstorf: And when we get into the Twilio stuff, we will look at first, how to handle all of the Twilio parts. But we're also going to look at things like, what happens if you're using a third party library that's not built for React, which is Twilio. Twilio gives you DOM elements, not React components. So we have to look at how to use React refs to put components from other libraries, put DOM elements from other libraries into our React apps in a way that actually works, that's not, you know, shoehorning them in or doing a whole bunch of extra work to re-implement how that third party library works.

Taylor Bell: Cool. I really like that you're going to have the learner build a thing, but then there's all these other things that you'll touch on and that are all going to be useful for future projects.

Jason Lengstorf: Yeah, the hope is that ... because, I mean, how often do you really have to build a video chat app in your in your professional life, right? So it's not like, hey, let's build a video chat app. It's, let's look at building dynamic apps, like apps with real world requirements using Gatsby and React and third party libraries.

Taylor Bell: That's awesome. So, after somebody takes your course, what would you suggest they do next?

Jason Lengstorf: I would say the first thing that I would recommend is that you're going to cement this stuff in your head better if you build something. So I would pick another service, something that is, you know, exciting to you. That can be literally anything, something that you enjoy working with, and try to build something similar. Try to implement that knowledge right away so that it really sticks in your head. And specifically, the Twilio part is cool and learning Twilio is amazing. It's going to give you so many super powers. You can do things, you know, like hook it up to automated processes to send yourself text messages and stuff. There's so many cool things that you can do with Twilio. But I think the real power of this course is less in teaching you the specifics of Twilio, and more in teaching you how to integrate something like Twilio into your Gatsby and React workflow.

Taylor Bell: That's awesome. Well, I'm looking forward to taking the course and I appreciate you meeting with me today to tell me a little bit about it.

Jason Lengstorf: Yeah, of course. Thanks for having me on.