Alex Trost
Alex Trost
Alex is a teacher who wants to make learning web development easier and more fun for everyone. He’s working on the Developer Experience team at Prismic to make building React sites with a powerful backend easier than ever. Working in the JAMStack with any React framework is where Alex is happiest. He also teaches creative coding techniques on his site, Frontend Horse.
Panel Discussion: The Modern Way of Making Websites in React
React Summit Remote Edition 2021React Summit Remote Edition 2021
33 min
Panel Discussion: The Modern Way of Making Websites in React
Video
So, let's get started. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I'm gonna go ahead and start the video. I have a good example for this. I have a good example for this. My current project, I'm working on Spotify embeds for our email and for our landing pages. And the way I usually approach creating this component is to just div it out. So I just make divs within divs and divs and divs. And the way I usually approach creating this component is to just div it out. So I just make divs within divs and divs and divs. And then I end up seeing, oh, I have a header, I have a subtitle, I need a Spotify logo, I need a play button, I need an image. And then I end up seeing, oh, I have a header, I have a subtitle, I need a Spotify logo, I need a play button, I need an image. And so once those keywords start popping out to me, I realize that those are gonna be smaller components. So I think for me, for advice is, I don't know that it needs to be smaller components until it's one big component. And then being able to like map it out big, being able to pull them out small into different files, I think help with the structure of what you actually need within your component, if that makes sense. Yeah, absolutely. I'm just giving that little bit of space in case anyone wants to jump in because without it being in person, you can't make the eye contact, you, you. So there's always that little bit of awkward pause, but I wanna make sure I'm not stepping on any toes or sidelining any great additions there. But Nader, I actually have a question for you. How do you kind of decide whether or not you're like, with a compound kind of component, how do you decide if you're going to be baking in other components, or if you're just kind of leaving a space for children components to be passed as a prop? Like, what kind of a judgment call do you make there? I mean, I guess, kind of just always keeping the idea of like extensibility and scalability. And if this, if there's any chance that they're going to use this by itself and make it to where that it's not going to be affected by having a parent. I don't know, like everything that could be standalone should be enabled to be maybe standalone and that sort of thing. I know that like at AWS, we were building and supporting a UI library that kind of allowed people to just spin up like authentication flows and image pickers and stuff using React components and just like maybe one line of code. And some of those things were kind of like relating to that. So for instance, for authentication flows, you could like spin up the entire flow with a single component, or you could kind of like nest within those components, individual components to kind of like configure things the way that you wanted it, but we made it work either way. So you could use these components standalone, you could nest them together. And yeah, it seemed to work out pretty well, pretty well that way, I guess. Awesome. Cool. I know we are running a little short on time. So I want to make sure we kind of hit all our main things. So I kind of want to move on to dynamic content and logic, just as kind of a broad topic. But, excuse me, do you have any like best practices for bringing data into your components? And Sadek, I know that you think about this a lot in terms of, yeah, just in terms of how to get data into those components, ways to make that still reusable and dynamic if needed. I mean, yeah, it's a big challenge. I know components could mean a lot of things. And often what we deal with, as I told several times already, we deal with websites, right? And a component could be part of any page, basically. So as I said, like maybe the most important thing is like to have a way to componentize the query, right? But you don't want to do like 10 queries or 20 queries if you have 20 components. So you need to kind of get one shot all the content and then break it into different things. So we have a concept for that. But you know, you can do it also with GraphQL. It's a very good way also to break the query into smaller parts. But then you can, you know, form a bigger query. But the important thing is like it's important to think in components even when you're talking about data, okay? And then, you know, there are different kinds of components. Like you can have a page itself could be a component, right? The whole page is a component, is a page component. But then each section of it is a component. And then the small buttons and things that you show inside that kind of macro or section component or section are as well. So you need, so it's often is, so we try to make like, okay, best practices. We see what matters. It's a matter of at which stop we should stop breaking things into smaller parts, right? So I think that for us, at least for our experience, there has been a section level is the middle ground, okay? So let's break the data into the smaller sections. And then that's it. You know, each section will manage its own data and its own components. Because it seems to be in websites, this is how it goes. So it depends on the logic on the app or what you're doing, right? But it seems like sections are more or less independent. And you can take that kind of make that kind of assumption and say, like, okay, we break them into these kind of macro things. And then everything else we'll get from this data. So this is what we do often, right? But the important thing is like you have, as I said, the model of the data should be next to the component. Because otherwise it will be a mess. If you do a big query and then you will throw that data and hope that the component will find their data, that could break. That's so fragile. That can break so easily. So that's why even when you're modeling your data, you say, like, okay, I'm modeling that component, that section, instead of like thinking about the page as a whole. I don't know if that's clear, but that's at least what we understood from our clients. There's a couple of tools that are useful as well for like caching and cache and validation. React Query and Use SWR are ones that I've used before. And it took me a while to kind of understand the use case for them, mainly because they automatically continue to refresh your data, even if you don't tell it to. So one suggestion is even if you use one of those tools to help take care of like your querying, your cache, your cache and validation, you might take away those things from updating automatically if you have a situation where you know when that data needs to be updated. So you're not making extra requests and getting data that doesn't need to come down. But those sorts of, those two packages specifically add or take away a lot of the boilerplate for doing like use effects and fetch calls and that kind of stuff. They take away a lot of that and then just expose your data to you in a way that works really well across components. And it's funny that I saw in, for instance, in several framers, including Next, for instance, that you have this kind of distinction between static data and dynamic data, which comes very handy in this kind of case, because also the way you manage data is not the same. Like in a website, mostly static. You don't need things to be dynamic. And that's a waste of CPU cycles, right, or whatever it is, our network or a lot of other things. Whereas for other things that should be dynamic, then it should be dynamic and you decide that, okay, this component should be dynamic. And I guess it's a good way also of dealing with this problem. Yeah, awesome. James, I'm actually curious about the benefits of Auth0's hook-based library compared to what I feel like we used to have a lot more of was like you would send the entire form as a component and I would like import a form. I don't know if Auth0 did it, but I see a lot of libraries moving away from here's our input field, here's our button component, and you use that, but now you're just sending us the logic. What's the benefit there? Yeah, so I love our React SDK and then more specifically, recently, our new Next.js SDK is fantastic. What it does, like you said, is you use the Auth0 provider, you wrap your application, which means you then have access to the use user hook in any different component that you want. And anybody that's done anything with users in the past, you probably want information about the user in the nav bar so you can conditionally display log in, log out buttons or their name. On a profile page, you need information about the user display there. So you end up needing user things in lots of different places. So with our use user hook, going back to the use case of hooks that we talked about a few minutes ago, in any component that you need information about the user, you just use that hook and have access to it and then display it. And a couple of other things that it does, it gives you the user, but you may not have a user, right? So the user may not be logged in. So it gives you a loading state as it's doing that validation to tell whether or not the user is logged in. So that in applications, oftentimes you'll see a little flash when the application loads, you might see log in and then it switches to log out because the application took a second to realize that the user is logged in. So you can actually handle that with the loading property is loading, I think that comes back from that use user hook in addition to the actual user itself. So a lot of the conditionals become like, if is not loading and user then display some sort of user information or the opposite of that for like a log in button versus log out button. But just having access to that hook and using it in any component that you need to get the information that you need about the user is super, super nice. Awesome. So to kind of close out, I think we're coming up on time, but I kind of want to quickly get to maintaining those components. And Erin, if you wouldn't kind of mind talking just about testing, why it's important and like what, which kinds of tests you would recommend in terms of if someone had to prioritize, and oftentimes we do, with which tests we are going to be implementing. What's kind of your advice to people out there? Yeah, I have a love hate relationship with testing. I want to love it. And I know how valuable it is. But it's just such a process. And test like TDD is such a thing. And I think it's great, but I haven't got to that level yet. Maybe one day, but component wise, I think being able to test React testing library is what I'm most familiar with. And to be testing at a smaller component level, and then growing up from there, I think, makes you more secure in these core, like primitive components, and to be able to use them throughout your app. So being able to have tests there are super valuable. I saw a quote or a tweet some couple weeks ago, I think it was. And it was, you should treat your tests like a contract. So if someone else comes in and messes up your test, it's not your fault. Smart. Smart. I love that. Well, thank you so much. I took a lot from that. I learned a lot. Thank you so much to Aaron, James, Sadek, Nader. Really appreciate you all being here. Yeah, I think that's pretty much it. Thanks for moderating. You did a great job. Well, thank you. I appreciate it. This is great. Yeah. And thank you for being here at React Summit, everyone. This is quite the event. So thank you so much.
Streamlining the Component Creation Process
React Summit Remote Edition 2021React Summit Remote Edition 2021
9 min
Streamlining the Component Creation Process
React helped popularize the use of components to develop websites and apps. It’s a fantastic philosophy, but while components have made our websites better, the workflow for creating components hasn’t improved much. Let’s get rid of the tedious parts like wiring your components to your CMS, and let developers focus on the important parts. With Prismic Slice Machine, we’re giving developers the best workflow for creating components. In only a few minutes we’ll create a React component, wire it to our CMS, add it to Storybook, and push the component live on our site!